On Thu, 14 Mar 2019 at 16:49, Vinnie Falco via Boost-users
There was a recent paper in Kona, P1269R0 ("Three Years with the Networking TS") about difficulty of implementing timeouts. To address this, Beast now has a stream class which implements configurable timeouts for you, and callers no longer have to fiddle with timers manually anymore. Everything "Just Works." It achieves the P1269R0 author's goal of having timeouts "built-in to asynchronous operations", but in a way that fits in with the design of the TS:
https://www.boost.org/doc/libs/master/libs/beast/doc/html/beast/using_io/tim...
I have not used the synchronous API at all. But section 3.1 of P1269R0 seems to make a good point about the lack of timeouts in synchronous calls, doesn't it? beast::basic_stream makes using timeouts in the async API way simpler, but is the sync API really basically unusable because of the lack of timeouts thing?