Sobes.tech
Junior — Middle

Kiedy dokładnie goroutines mogą przejść do lokalnej kolejki wykonania?

sobes.tech AI

Odpowiedź od AI

Gorutiny w Go mogą przejść do lokalnej kolejki wykonawczej (local run queue) w następujących przypadkach:

  • Gdy gorutyna jest tworzona za pomocą go i planista umieszcza ją w kolejce do wykonania na bieżącym wątku (P).
  • Po zablokowaniu lub oczekiwaniu, gdy gorutyna jest gotowa do wykonania, wraca do lokalnej kolejki.
  • Podczas równoważenia obciążenia planista może przenosić gorutiny między kolejkami, ale lokalna kolejka jest głównym miejscem, gdzie gorutyna oczekuje na uruchomienie na konkretnym wątku.

W związku z tym, lokalna kolejka to kolejka gorutyn, które są gotowe do wykonania i oczekują przydziału czasu procesora na konkretnym wątku (P).