Автор Ника Рика задал вопрос в разделе Другие языки и технологии
Вопрос программистам C++ WaitForSingleObject и получил лучший ответ
Ответ от Николай[гуру]
в цикле посылайте им сигналы на выключения пока не получите нужный статус. По опыту примерно итераций 50 уйдет на каждый поток
Ответ от Seva Kazakov[гуру]
за место INFINIT поставь таймаут и добавь
case WAIT_TIMEOUT:
if(flagExit == false)
continue;
else
return;
break;
так можно закончить работу коррестно.
ты можешь завести одну глобальную переменную типа "bool exit_all"
и сбросив ее все потоки выйдут через timeout.
за место INFINIT поставь таймаут и добавь
case WAIT_TIMEOUT:
if(flagExit == false)
continue;
else
return;
break;
так можно закончить работу коррестно.
ты можешь завести одну глобальную переменную типа "bool exit_all"
и сбросив ее все потоки выйдут через timeout.
Ответ от Globe[гуру]
Хм, если не ошибаюсь, вроде, для того переменная pApp->ghWriteEvent и предназначена, чтобы из другой нити этот эвент можно было установить и тем самым разблокировать данную нить.
Наверно, по закрытию приложения нужно эти эвенты проставить, тогда нити проверят, что они Terminated, и поумирают.
Хм, если не ошибаюсь, вроде, для того переменная pApp->ghWriteEvent и предназначена, чтобы из другой нити этот эвент можно было установить и тем самым разблокировать данную нить.
Наверно, по закрытию приложения нужно эти эвенты проставить, тогда нити проверят, что они Terminated, и поумирают.
Ответ от Xoodoo[гуру]
> так вот потоки с WaitForSingleObject висят
А использовать MsgWaitForMultipleObjects[Ex] вместо WaitForSingleObject тебе видимо религия не позволяет
> так вот потоки с WaitForSingleObject висят
А использовать MsgWaitForMultipleObjects[Ex] вместо WaitForSingleObject тебе видимо религия не позволяет
Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Вопрос программистам C++ WaitForSingleObject
как отследить завершение процесса в Delphi?
Можешь попробовать так:
procedure Start;
var
si: TStartupInfo;
p:
подробнее...
спросили в Crytek VRR
Дайте пример простого использования CreateProcess в Delphi. Без каких-либо дополнительных условий.
Это одна из самых простых ф-й winapi. Пример:
procedure ExecNewProcess(ProgramName :
подробнее...
Дайте пример простого использования CreateProcess в Delphi. Без каких-либо дополнительных условий.
Это одна из самых простых ф-й winapi. Пример:
procedure ExecNewProcess(ProgramName :
подробнее...