Синхронизация потоков, ... |
Здравствуйте, гость ( Вход | Регистрация )
Синхронизация потоков, ... |
Гость_Гость_Алексей_*_* |
11.4.2012, 0:52
Сообщение
#1
|
Гости |
В общем задача в том чтоб
Запустить функцию из главного потока, которая находиться в дочернем потоке(ну дочерний поток естественно создан на boost)... подождать пока она выполниться(в дочернем потоке) и продолжить работу... я в многозадачность некогда не лез раньше... но походу пора уже.. читал про mutex но хз.. на сколько оно подойдет здесь Код не прошу.. прост укажите куда копать пожалуст. |
|
|
Iron Bug |
11.4.2012, 8:36
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
есть у буста в документации по boost::thread раздел синхронизация потоков. это базовая документация по всем видам синхронизации в бусте (для потоков).
в данном случае ты можешь применить условные переменные (condition variables) или барьеры (barriers). барьеры проще(тут их вполне достаточно будет), условные переменные - универсальней. но вообще, какой смысл запускать функцию в отдельном потоке, если ты всё равно ждёшь её завершения? тут какая-то чисто логическая ошибка. либо ты что-то недопонял, либо не так сформулировал. обычно потоки используются для параллельного выполнения задач. Сообщение отредактировал Iron Bug - 11.4.2012, 8:37 |
|
|
Текстовая версия | Сейчас: 26.11.2024, 1:56 |