Stephan,what about that:
like this (pseudo): void readthread() { try
// go into blocking read sock.sync_receive_from(...);
} original thread: ... thread t1(readthread); boost::this_thread::sleep(timeout);