Por exemplo, uma simples implementação do scheduler de thread mantém a thread de prioridade mais alta executando o tempo todo e, se houver mais de uma thread de prioridade mais alta, isso assegura que cada uma dessas threads execute por um quantum no estilo rodízio. A figura a seguir ilustra esse cenário.
|
A figura apresenta uma fila de prioridade de múltiplos níveis para as threads. Na figura, supondo um computador de um único processador, as threads A e B executam por um quantum no esquema de rodízio até que ambas as threads completem sua execução. Isso significa que A obtém um quantum de tempo para executar. Então B obtém um quantum. Então A obtém outro quantum. Então B obtém outro quantum. E isso continua até que uma thread complete a sua execução. O processador dedica então toda a sua energia à thread que resta (a menos que outra thread de prioridade 10 se torne pronta). Em seguida, a thread C executa até sua conclusão (assumindo que nenhuma thread de prioridade igual ou mais alta chegará). E esse procedimento continua por todas as threads presentes até as suas respectivas conclusões. |