Angenommen, ich habe einen Prozess mit 4 Threads und möchte, dass sie nach einem bestimmten Planungsalgorithmus ablaufen. Ich suchte und fand pthread_setschedparam
y sched_setschedparam
Funktionen für die Auswahl eines Algorithmus und das Setzen von Prioritäten eines Threads, aber ich sah eine Sache, die unklar war - pthread_setschedparam
nimmt einen Thread-Namen und legt seine eigene Zeitplanungsrichtlinie fest. Was bedeutet das konkret, da ich dachte, dass alle Threads innerhalb eines Prozesses nach einer Richtlinie geplant werden, die für den gesamten Prozess festgelegt ist. Bedeutet das dann, dass ich, wenn ich sched_setschedparam
und eine Richtlinie festlegen (da sie sich über die PID auf einen Prozess bezieht), wird sichergestellt, dass die Threads innerhalb dieses Prozesses gemäß der ausgewählten Planungsrichtlinie ausgeführt werden?
Der Code, den ich schreibe, ist für Linux, ich habe boost verwendet, musste aber für diesen Teil auf pthreads zurückgreifen.