waitforsingleobject delphi



Автор Ника Рика задал вопрос в разделе Другие языки и технологии

Вопрос программистам C++ WaitForSingleObject и получил лучший ответ

Ответ от Николай[гуру]
в цикле посылайте им сигналы на выключения пока не получите нужный статус. По опыту примерно итераций 50 уйдет на каждый поток

Ответ от Seva Kazakov[гуру]
за место INFINIT поставь таймаут и добавь
case WAIT_TIMEOUT:
if(flagExit == false)
continue;
else
return;
break;
так можно закончить работу коррестно.
ты можешь завести одну глобальную переменную типа "bool exit_all"
и сбросив ее все потоки выйдут через timeout.

Ответ от Globe[гуру]
Хм, если не ошибаюсь, вроде, для того переменная pApp->ghWriteEvent и предназначена, чтобы из другой нити этот эвент можно было установить и тем самым разблокировать данную нить.
Наверно, по закрытию приложения нужно эти эвенты проставить, тогда нити проверят, что они Terminated, и поумирают.

Ответ от Xoodoo[гуру]
> так вот потоки с WaitForSingleObject висят
А использовать MsgWaitForMultipleObjects[Ex] вместо WaitForSingleObject тебе видимо религия не позволяет

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Вопрос программистам C++ WaitForSingleObject
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*