23.02.2014, 23:08. Просмотров 251. Ответов 3
И опять работа с потоками...Как она меня напрягает последнее время) Но нужно научиться, нужно сделать то, что я задумал. Думаю вы поможете мне в этом)
Итак, есть 3 потока - START, KEYPRESSED, MAIN(главный поток).
Главный поток MAIN запускает сразу два потока одновременно - START и KEYPRESSED, и ждет их завершения. Но он должен ждать их завершения очень интересно:
Если завершиться поток START, то мы завершаем самостоятельно поток KEYPRESSED и возвращаемся в поток MAIN.
Если завершиться поток KEYPRESSED, то мы приостанавливаем поток START, возвращаемся в MAIN и зная что завершился поток KEYPRESSED, вывести соответствующее сообщение, на пример "KEYPRESSED THE END".
Как такую систему потоков можно осуществить? Работаю с WinAPI, но можно объяснить и на уровне стандартной библиотеки C++ 11 - std. Есть функция WaitFoSingleObject, которая при передаче соответствующего параметра ждет завершения потока. Но как сделать,чтобы мне ждать завершения одного из двух потоков, и точно знать, какой поток завершился, вот это скорее всего мне нужно.
Помогите пожалуйста, нужно очень для продолжения выполнения задачи. Дальше этого не могу двигаться(
0
|