by Guest » 20 Jan 2025, 12:00
Ich habe mehrere Threads, die gleichzeitig an unterschiedlichen Problemen arbeiten.
Manchmal warten einige Threads auf die Ergebnisse anderer Threads, deren Status durch eine boolesche Variable festgelegt wird.
Wenn ein Thread auf das Ergebnis eines anderen Threads warten muss, mache ich das so:
Code: Select all
while(!finished)
{
std::this_thread::sleep_for(std::chrono::milliseconds(1));
}
Ich suche nach einer besseren Möglichkeit, dem Planer zu signalisieren, mit dem nächsten Thread fortzufahren. Etwa so:
Code: Select all
while(!finished)
{
schedular.schedule();
}
Wie kann man dem Scheduler am besten signalisieren, dass der aktuelle Thread nichts mehr zu tun hat und mit dem nächsten Thread fortfahren soll?
Ich habe mehrere Threads, die gleichzeitig an unterschiedlichen Problemen arbeiten.
Manchmal warten einige Threads auf die Ergebnisse anderer Threads, deren Status durch eine boolesche Variable festgelegt wird.
Wenn ein Thread auf das Ergebnis eines anderen Threads warten muss, mache ich das so:
[code]while(!finished)
{
std::this_thread::sleep_for(std::chrono::milliseconds(1));
}
[/code]
Ich suche nach einer besseren Möglichkeit, dem Planer zu signalisieren, mit dem nächsten Thread fortzufahren. Etwa so:
[code]while(!finished)
{
schedular.schedule();
}
[/code]
Wie kann man dem Scheduler am besten signalisieren, dass der aktuelle Thread nichts mehr zu tun hat und mit dem nächsten Thread fortfahren soll?