In the future i should think about changing the code design and use
boost.signals2 but in meantime i would like to have some workaround so i
ported: https://github.com/neosmart/pevents
and it already works well but when we go out of scope I have probably some
heap corruption. (HEAP[app.exe]: HEAP: Free Heap block 363ef10 modified at
363ef38 after it was freed). I attached source code and also test case,
maybe I am blind because I don't know what is wrong.
Best regards
2015-02-17 5:00 GMT+01:00 Andrey Semashev
On Monday 16 February 2015 17:04:34 Rob Stewart wrote:
On February 16, 2015 8:21:01 AM EST, Andrey Semashev
wrote: On Monday 16 February 2015 06:47:00 Rob Stewart wrote:
The same is possible using select if one opens a pipe or socket to the other process, since closing the other process will close its end of the IPC.
I think sigwait or signalfd are better suited for this.
Those only apply to monitoring signals. The desire here was to wait on multiple things including sync primitives.
I was suggesting a way to monitor a process, as a better alternative to pipes.
However, I feel that in such cases specialized solutions or Boost.ASIO would play better.
Those would only apply to files, sockets, etc.
Boost.ASIO has support for any fd-based entities, and also can be used to invoke functions in the working threads. This covers pretty much everything you may need in order to synchronize with multiple event sources.
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost