[フレーム]
はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

気に入った記事をブックマーク

  • 気に入った記事を保存できます
    保存した記事の一覧は、はてなブックマークで確認・編集ができます
  • 記事を読んだ感想やメモを書き残せます
  • 非公開でブックマークすることもできます
適切な情報に変更

エントリーの編集

loading...

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。

タイトルガイドライン

このページのオーナーなので以下のアクションを実行できます

タイトル、本文などの情報を
再取得することができます
コメントを非表示にできます コメント表示の設定

ブックマークしました

ここにツイート内容が記載されます https://b.hatena.ne.jp/URLはspanで囲んでください

Twitterで共有

ONにすると、次回以降このダイアログを飛ばしてTwitterに遷移します

144users がブックマーク コメント 13

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

言語のスレッド実装の雑な話(Green threadからGoのgoroutineまで)

ガイドラインをご確認の上、良識あるコメントにご協力ください

0 / 0
入力したタグを追加

現在プライベートモードです 設定を変更する

おすすめタグタグについて

よく使うタグ

はてなブックマーク

はてなブックマークで
関心をシェアしよう

みんなの興味と感想が集まることで
新しい発見や、深堀りがもっと楽しく

ユーザー登録

アカウントをお持ちの方はログインページ

記事へのコメント13

  • 注目コメント
  • 新着コメント
rjj
Solarisも途中でM:Nモデルは捨てたが...。

その他
kogule
clone 云々は Linux 限定の話。/N:M mapping は Solaris や NetBSD の scheduler activation のように実装例はふつうにある。難しいのはどちらかというと使い方。記事を読むかぎり goroutine もその使い方に対処するのが主眼じゃないかな。

その他
knok
昔(2000年代)ぐらいに「N:Mマッピングは複雑なわりに恩恵が少ない」というような話をNetBSD方面で聞いた記憶があるのだけど実際どうなんだろう

その他
taiyow
そう、SolarisはN:Mスレッドを採用してる記事をかつて読んですげーと思ってたが、いつのまにか変わっていてがっかりしたが、気づいたらGoやErlangが採用しててまた感激してる。

その他
rryu
グリーンスレッドはシングルコアの時代のもので、マルチコアが普通になった時にどうスケジュールするのかという問題になり、今は空きコアで実行する手続きのキューを作るというのがメジャーな感じがする。

その他
wyukawa
Goのgoroutineてそうだったのか

その他
xlc
NodeのノンブロッキングIOによるコンテキストスイッチに慣れてしまうと「スレッドって本当に必要なの?」という気持ちになる。

その他
rjj
rjj Solarisも途中でM:Nモデルは捨てたが...。

2023年01月10日 リンク

その他
turanukimaru
昔はOSのスレッド自体が重かったしな。並行実行そのものが実用的ではないし非同期にするために頑張って使うものだった。Goも私は非同期にするために goroutine 使ってるけど高速化のために使ってる人もいるのだろうか。

その他
fog-og-frog2
全然関係ないけど、Tinygoをwasmで動かすとき、GOMAXPROCSは1固定なんよね。wasi-threadはまだ検証中だし、はーよーってわりと待ってる

その他
gfx
green threadといえばRuby 1.8 (MRI) のスレッド実装も有名だったと思う。『Rubyソースコード完全解説』で詳しく解説されていたのが印象的だった。

その他
yarumato
"Javaのgreen threadはOSからみると1つのthreadで動くシングルコアCPU時代のもので、早々に破棄され、OSのスレッドと言語のスレッドが1対1対応するnative threadに移行した。Go言語のgoroutineはOSのスレッドを複数分散できて理想的"

その他
hasiduki
goroutineはErlangのスレッドを参考にしたとか聞いた気がする!!!!!!

その他
knok
knok 昔(2000年代)ぐらいに「N:Mマッピングは複雑なわりに恩恵が少ない」というような話をNetBSD方面で聞いた記憶があるのだけど実際どうなんだろう

2023年01月10日 リンク

その他
kogule
kogule clone 云々は Linux 限定の話。/N:M mapping は Solaris や NetBSD の scheduler activation のように実装例はふつうにある。難しいのはどちらかというと使い方。記事を読むかぎり goroutine もその使い方に対処するのが主眼じゃないかな。

2023年01月10日 リンク

その他
Keisuke69
Goのgoroutineてそうだったのか。すげーな

その他

注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

リンクを埋め込む

以下のコードをコピーしてサイトに埋め込むことができます

プレビュー
アプリのスクリーンショット
いまの話題をアプリでチェック!
  • バナー広告なし
  • ミュート機能あり
  • ダークモード搭載
アプリをダウンロード

関連記事

usersに達しました!

さんが1番目にブックマークした記事「言語のスレッド実...」が注目されています。

気持ちをシェアしよう

ツイートする

言語のスレッド実装の雑な話(Green threadからGoのgoroutineまで)

Twitterで "green thread" という単語をたまたま見かけたので、知っていることをつぶやいたよ。 Green t... Twitterで "green thread" という単語をたまたま見かけたので、知っていることをつぶやいたよ。 Green thread 言語のスレッドとOSのスレッドの関係 N:1 mapping 言語のスレッドの全てがひとつのOSのスレッドの上で実行されるもの。その代表が上記のJavagreen thread。 OSのシステムコールを呼ぶときには必ずnonblockingモードを使い、EAGAIN または EWOULDBLOCKが返ってきたときには他のスレッドの実行権に譲るようにする必要がある。うっかりシステムコールでブロックされてしまうと、全部のスレッドが巻き添えになって動けなくなる。 スレッドの生成やコンテキストの切り替えは軽い。しかし、マルチコアを生かすことができないため、シングルコアの環境でのみ使用される。 1:1 mapping OSのスレッドと言語のスレッドが1対1対応

ブックマークしたユーザー

  • techtech05212024年05月31日 techtech0521
  • mkusaka2023年09月26日 mkusaka
  • issyurn2023年04月30日 issyurn
  • W53SA2023年01月31日 W53SA
  • miguchi2023年01月30日 miguchi
  • nukosan5552023年01月27日 nukosan555
  • mapk0y2023年01月12日 mapk0y
  • taiyow2023年01月11日 taiyow
  • serihiro2023年01月11日 serihiro
  • rryu2023年01月11日 rryu
  • rin512023年01月10日 rin51
  • zu22023年01月10日 zu2
  • wyukawa2023年01月10日 wyukawa
  • xlc2023年01月10日 xlc
  • petite_blue2023年01月10日 petite_blue
  • qnq7772023年01月10日 qnq777
  • ThailandMethod2023年01月10日 ThailandMethod
  • zetta19852023年01月10日 zetta1985
すべてのユーザーの
詳細を表示します

ブックマークしたすべてのユーザー

同じサイトの新着

同じサイトの新着をもっと読む

いま人気の記事

いま人気の記事をもっと読む

いま人気の記事 - テクノロジー

いま人気の記事 - テクノロジーをもっと読む

新着記事 - テクノロジー

新着記事 - テクノロジーをもっと読む

同時期にブックマークされた記事

いま人気の記事 - 企業メディア

企業メディアをもっと読む

はてなブックマーク

公式Twitter

はてなのサービス

Copyright © 2005-2025 Hatena. All Rights Reserved.
設定を変更しましたx

AltStyle によって変換されたページ (->オリジナル) /