問題タブ [data-race]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - マルチスレッド プログラムでの共有リソースの更新
誰かが次のプログラムの出力を説明できますか:
出力:
- [8、5]
- [9、2、2、8]
- [2]
出力のさまざまな値の数を理解するのに苦労しています。メイン スレッドは、try-catch ブロックに参加しているため、すべてのスレッドの実行が終了するまで待機し、各スレッドから 1 つずつ、4 つの値を出力するか、中断した場合はコンソールに出力することを期待します。どちらもここでは実際に起こっていません。
これがマルチスレッドでのデータ競合によるものである場合、ここでどのように機能しますか?