golangに関するota42yのブックマーク (1)

  • goroutineの動き方を調べた

    shinjuku.rbで話した内容です。 が、スライドだけだとよくわからないのでもう少し文章を補足した版を上げておきます。 要約 goroutineの実態はスレッド go xxxした関数はプロセッサ数に応じて適切なスレッドに割り振られて処理される work-stealingアルゴリズムで処理のスケジューリングをする goroutineとは何か 以下のように書くと、非同期でgo xxxに渡した関数が実行されます。 実態はスレッドらしいのですが、基的にはうまく覆い隠されており、以下のような細かい点は意識しなくてよいようになっています。 実行までの手順はどうなってるのか 非同期処理の管理はどうしているのか スレッド数の調節はどう行われているのか 今回は、goはこれらの点をどう解決しているのかを調べました。 goroutineの登録 上記のコードのうち、go xxxの部分をコンパイルした結果は以

  • 1