
On Sun, 14 Dec 2008 14:52:15 +0100, Andreas Pokorny <andreas.pokorny@gmail.com> wrote:
[...]Furthermore you should really rework the timer service example: "[...] Während eine synchrone Operation wie wait lediglich auf die Dienst-Implementation zugreift, um eine blockierende Methode aufzurufen, erfolgt dies für eine asynchrone Operation wie async_wait mit Hilfe eines Threads. Der Trick bei asynchronen Operationen ist also der, dass eine blockierende Funktion einfach in einem Thread aufgerufen wird."
Instead of advertising worker threads for blocking function calls as "the trick" for asyncronous operations, you should explain why this is a rather dirty and expensive fallback - only required if no other solution can be found. Doing it the right way is not as easy as in the current example from the book, but far more interesting.
Thanks for your feedback! But to what other interface in Boost.Asio are actually referring? I can only think of posix::stream_descriptor and windows::stream_handle which make it possible to integrate a simple file descriptor or Windows HANDLE which are used by many API functions on those platforms. Do you mean these classes? Then I guess I should add another section first before I use the helper thread as a last resort? Boris