ho qualcosa di simile:Come con grazia arresto un filo in C
DWORD WINAPI test(LPVOID lpParam) {
while (1) {
/*DO STUFF*/
}
}
int main() {
...
hThread = CreateThread(NULL,0,test,NULL,0,&dwThreadId);
...
}
Come posso spegnere il filo, senza TerminateThread()? La mia prima idea è stata la creazione di una variabile globale (shouldshutdown = 0/1), impostarla nel main() quando il Thread dovrebbe chiudersi. Quindi chiama ExitThread() nella discussione. Quindi devo controllare questa variabile nel ciclo while del thread che è uno stile cattivo, credo.
Come saprà il thread deve restituire? – 2501
utilizza gestori di segnale – Charlestone
@ 2501 Non funziona. Questo è il problema. Devo implementare qualcosa come un controllo nel ciclo: voglio evitare questo. – Kntlii