エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【Ruby】ArrayとQueueがスレッドセーフか検証してみた - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【Ruby】ArrayとQueueがスレッドセーフか検証してみた - Qiita
背景 RubyのQueueクラスの説明に、これはスレッドセーフだと書いてあったので検証してみました。 スレッ... 背景 RubyのQueueクラスの説明に、これはスレッドセーフだと書いてあったので検証してみました。 スレッドセーフとは 自分でも正確な意味を理解していなかったので調べてみました。スレッドセーフとはアプリケーションをマルチスレッドで動作させても問題がないこと スレッドアンセーフだとどうなるか たとえばマルチスレッドで実行したときに、複数スレッドから同一の変数に変更が発生してデータが消えたり意図しない値になってしまうこと(レースコンディションという) つまり仮説! ArrayとQueueを用意し、100スレッドで複数のワーカーで同時にpopさせて並列計算するとQueueでは正しい結果が出力されるが、Arrayではレースコンディションが発生し、計算結果がズレる..はず 仕様 1..10000000の値を合計する。結果が50000005000000となれば正しい レースコンディションが発生すれば