Здравствуйте, Pavel Dvorkin, Вы писали:
PD>А что там насчет сигнализации из одного потока в другой ? mutex и lock — это замечательно, а где event ?
это уже тема для другой статьи, так же как и условные переменные.
Если интересно, можно
тут все посмотреть и потрогать.
В частности для того что бы подружить два потока можно использовать std::unique_future и std::promise.
Первый из них ожидает результат, а другое сигнализирует о том что закончил работу.
основные компоненты библиотеки
std::thread class for launching and managing threads.
Mutex classes (std::mutex, std::timed_mutex, etc.) for protecting shared data.
Condition variables (std::condition_variable and std::condition_variable_any) for synchronizing operations.
Atomic types (std::atomic_int, std::atomic_long, etc.) for low level atomic access.
Futures and promises (std::unique_future, std::promise, etc.) for communicating data between threads.
Заявлена поддержка:
Compatible with Microsoft Visual Studio 2008 and Microsoft Visual C++ Express 2008 for 32-bit Windows targets.
Compatible with g++ 4.3 for 32-bit and 64-bit Ubuntu linux targets, making full use of the C++0x support from g++ including rvalue references and variadic templates.
Здесь полная онлайн документация по библиотеке