6

Go言語がゴルーチンをどのようにスケジュールするかについて興味があります。チャネル要求と I/O の間だけ切り替えますか、それとも定期的なコルーチン切り替えループがありますか?

4

1 に答える 1

8

Go にはまだプリエンプティブ スケジューラがありませんが、1.2 で予定されています。いいえ、Go は CPU のみの計算中にコンテキストを切り替えず、I/O 中にのみ切り替えます (メモリからの読み取りは、まだレジスタにない場合は I/O と見なされます)。これについては、 Issue 543 - preemptive Schedulingでいくつかの議論を読むことができます。

于 2013-08-31T07:16:33.247 に答える