-1

競合状態のリスクと、書き込まれた値または読み取られた値が破損する可能性があることを認識しています。私は、ブール値と整数、およびいくつかのクラスインスタンスで競合している状況にあります。

これにより、プログラムがクラッシュしたり、データが無効になる以外に、プログラムに何らかの悪影響が及ぶ可能性はありますか? 最悪の事態を心配していますか?

私は自分のプログラムの 2 つのバージョンをデバッグ用に持っており、別のバージョンには最適化のための多くのオプションがあります。この最後の1つは生産に行くので心配です。

4

2 に答える 2

3

data not being valid何かが起こる可能性があります (つまり、未定義の動作を呼び出します)。そのため、アプリケーションがクラッシュしたり、メモリ リークが発生したり、ハード ドライブがフォーマットされたり、その他ほとんどすべてのことが発生する可能性があることを念頭に置いてください。

于 2013-03-19T13:34:45.097 に答える
0

これにより、プログラムがクラッシュする可能性があります

競合するリソースによって異なりますが、そうです。あるスレッドがリソースを取得し、別のスレッドが処理を進めるためにそれを必要とする場合、未定義の動作が発生したり、プログラムがクラッシュしたりする可能性があります。

データが有効でないことを除けば、私のプログラムに対する他の厄介な影響はありますか?

無効なデータ (つまり実質的に役に立たないプログラム) は別として、デッドロックが発生する可能性もあります。

競合状態に関するウィキペディアの記事は、このような質問に対する回答を見つけるのに適した場所です。

于 2013-03-19T16:37:22.380 に答える