配列要素はワーカー間で正しく公開されていますか?
大きな配列があるとします (任意のアトミック データ型であるため、long
orではありませんdouble
)。
- コンストラクターに渡す配列を埋めるワーカーを作成し、
- ワーカーをエグゼキューターに送信し、完了するまで待ちます (例:
future.get()
)。ワーカーは何も返しません。それは私の配列を埋めるだけです。 - 次に、コンストラクターに同じ配列を持つ別のワーカーをすぐに作成して送信します。最新の値が表示されますか?
言い換えれば、前のワーカーの最後の書き込みが、次のワーカーの最初の読み取りの前に発生することが保証されていますか?
参照が既に持っているものと同じであっても、代わりに(またはベストプラクティスなどのために)最初のワーカーに配列を返させる必要がありますか?
[編集] いくつかの背景: 私はbyte
配列またはshort
配列のいずれかを使用します。これらは画像を表し、それぞれ最大 5 億個の要素を使用します。各要素に対して簡単な計算を実行します。