Re: [Boost-bugs] [Boost C++ Libraries] #8933: on the windows platform async reads with multiple threads can produce random EOF errors

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8933: on the windows platform async reads with multiple threads can produce random EOF errors
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-08-12 13:45:41


#8933: on the windows platform async reads with multiple threads can produce
random EOF errors
-----------------------------------------+----------------------------
  Reporter: Shane Powell <killerbee@…> | Owner: chris_kohlhoff
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: asio
   Version: Boost 1.54.0 | Severity: Showstopper
Resolution: | Keywords:
-----------------------------------------+----------------------------

Comment (by simoncperkins@…):

 Shane,

 It would also be interesting to know if the polling of
 GetQueuedCompletionStatus every 500 ms is still required or could the
 gqcs_timeout be set to INFINITE.

 The comment for this timeout is as follows:

     // Timeout to use with GetQueuedCompletionStatus. Some versions of
 windows
     // have a "bug" where a call to GetQueuedCompletionStatus can appear
 stuck
     // even though there are events waiting on the queue. Using a timeout
 helps
     // to work around the issue.

 I didn't find any problem with running my tests with a value of INFINITE -
 although that was only on Windows 7.

 If you had two service threads then a thread would be waking up four times
 a second even if the ASIO client/server was idle. Presumably, this could
 have power implications on some devices.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8933#comment:15>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:13 UTC