|
Boost : |
From: Alexander Terekhov (terekhov_at_[hidden])
Date: 2005-02-08 06:12:08
Serguei Kolos wrote:
[...]
> This is shame. That's why I don't understand why Boost.Thread does not
> support semaphores anymore.
How about (quoting C++ std)
"The common subset of the C and C++ languages consists of all
declarations, definitions, and expressions that may appear in
a well formed C++ program and also in a conforming C program.
A POF (``plain old function'') is a function that uses only
features from this common subset, and that does not directly
or indirectly use any function that is not a POF. All signal
handlers shall have C linkage. A POF that could be used as a
signal handler in a conforming C program does not produce
undefined behavior when used as a signal handler in a C++
program. The behavior of any other function used as a signal
handler in a C++ program is implementation defined."
Implementation defined is not good for boost, oder? ;-)
Get rid of async signal handling. Use SIGEV_THREAD and/or
sig{timed}wait{info}()) and dedicated signal handling thread(s).
As for synchronous signals, use SEH-like implementation
defined EH extensions to handle them in structured fashion.
regards,
alexander.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk