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

Vinoth Kumar vinothsparrow@REDACTED
Mon Mar 17 11:47:36 CET 2014

Thanks Max,
I will do it with application level confirmation. :)
Date: Mon, 17 Mar 2014 14:29:56 +0400
Subject: Re: [erlang-questions] gen_tcp send non-blocking in erlang?
From: max.lapshin@REDACTED
To: vinothsparrow@REDACTED
CC: erlang-questions@REDACTED

As far as I remember, Unix API doesn't give you any ability to tell that you have received ACK.
There are many reasons. One of them is that TCP socket is a pipe only from application point of view. Kernel sees TCP as a window: some fragments of window are received, some are not. When to notify you? When all buffer is sent? 
Perhaps in such way your application will be very inefficient, because you will have to spend more time fetching data from remote server or local disk and send again.

Maybe you should take a look at some application level confirm? "Hey there is a packet #145", "Thanks, I've received #145".

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20140317/a64ecfc1/attachment.htm>

More information about the erlang-questions mailing list