Я работаю над многопоточным приложением, где я использую SetEvent()
, чтобы закрыть поток в Windows.
Каков эквивалент в linux c ++ для отправки сигнала потоку? Приложение должно работать как на Windows, так и на Linux.
В Windows я делаю следующее:
В пользовательском интерфейсе у меня есть кнопка сказать Закрыть тему . Как только пользователь нажмет кнопку, он установит событие, используя SetEvent()
, что заставит поток остановить его сам.
void closethread()
{
Setevent(hEventhandle);
}
void * threadProc(void* args)
{
waitforsingleobject(hEventhandle,infintie)
}
Есть ли лучший способ закрыть поток, когда пользователь нажимает кнопку?