|
Boost Users : |
Subject: Re: [Boost-users] [asio] Socket closed notification?
From: Jonathan Franklin (franklin.jonathan_at_[hidden])
Date: 2009-12-14 23:43:53
On Mon, Dec 14, 2009 at 9:17 PM, Scott Gifford
<sgifford_at_[hidden]> wrote:
> Andrew Maclean <andrew.amaclean_at_[hidden]> writes:
>> On Tue, Dec 15, 2009 at 2:50 PM, Scott Gifford
>> <sgifford_at_[hidden]> wrote:
>>> Jonathan Franklin <franklin.jonathan_at_[hidden]> writes:
> Sure, just use any of the read functions and see if they return an
> error. In my application, I use read_until(), but any function that
> reads should do.
If the remote app closes unexpectedly, you read will return EOF.
>> Unfortunately, write isn't reliable since it will always succeed until
>> you fill up your send buffer.
>
> Well, OK, maybe a write and a flush. Certainly there are othe
> buffers, but typically a TCP implementation will time out at some
> point if it has some pending data which is not acknowledged, and
> typically once data is flushed to the TCP layer it will try to write
> it and begin waiting for its timeout.
Yeah, it's not reliable, and can take *many* writes.
Jon
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net