[erlang-questions] gen_tcp send non-blocking in erlang?

Carsten Bormann <>
Mon Mar 17 12:29:09 CET 2014

On 17 Mar 2014, at 12:19, Matthias Lang <> wrote:

> TCP _does_ know which data has been ACKed. But that information gets
> lost somewhere between the TCP stack and ordinary programs.

Not really.  Look up “connection-splitting PEP”.

> Something like this:
>   http://www.erlang.se/workshop/2005/tcpip_presentation.pdf
> could be tweaked so that it really does let Erlang code figure out whether
> or not a particular byte has reached the remote TCP stack.

And that is useful how?

The process reading from the socket could crash any moment after that.

(This discussion seems to conflate misusing transport acknowledgments for application-level acknowledgment with flow control.
The latter *is* important, and appears to have somewhat strange solutions, if at all, in the Erlang world.)

Grüße, Carsten

More information about the erlang-questions mailing list