1

2 つのスレッドが同じ場所に書き込みを行っているかどうかはわかっていますが、それらが安全な方法で書き込みを行い、問題が発生しないことを確認する必要があります。

私の場合、小さなゲームで初めてスレッドを使用して、レンダリングとは別に更新を維持しています。すべてのレンダリングを行うクラスは、読み取ったものに書き込むことは決してないため、両方が共有するすべてのものに対してすべての読み取りと書き込みを処理する必要があるかどうかはわかりません。

レンダラーがもう存在しないものを読み取ろうとしないようにするために適切な手順を実行しますが、プレーヤーやエンティティのゲッターなどを呼び出すときは、それらを同じように扱う必要がありますか? または、x、y コードなどの値や、「生きている」などのブール値を volatile に設定するとうまくいきますか?

私の理解はこれについて非常に曖昧になり、いくつかの啓発で行うことができます

編集:共有データは、オブジェクトのリストに描画および移動して保存する必要があるものです。たとえば、プレーヤーと他のエンティティの。

4

2 に答える 2