$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
Subject: [boost] [asio] possible multi-threaded bug with async_write_some()
From: Brian and Victoria (bnv_at_[hidden])
Date: 2009-03-21 00:07:05
I'm running asio (boost 1.38) multi-threaded, and noticed that on a 
context switch between threads, my handler for async_write_some() will 
sometimes get invoked with no data transferred.  My handler would call 
async_write_some() again if there was remaining data, but this caused 
(most of) the data to get sent twice since there appears to still be a 
call to the handler pending in the work queue.
I'm not sure if this behavior is a bug or not, but the solution was to 
check for 0 data transferred and exit the handler if so.
-Brian