ウィキペディアから:
個別のコンピュータ プロセスまたは実行スレッドが何らかの共有状態に依存している場合、ソフトウェアで競合状態が発生します。
これを正しく理解している場合、共有リソースが保護されているにもかかわらず、次のことも競合状態になるということですか?
int x; // global
Thread1:
Lock(m);
x=1;
Unlock(m)
Thread2:
Lock(m);
x=2;
Unlock(m);
明らかに、出力は実行順序に依存します。
ウィキペディアから:
個別のコンピュータ プロセスまたは実行スレッドが何らかの共有状態に依存している場合、ソフトウェアで競合状態が発生します。
これを正しく理解している場合、共有リソースが保護されているにもかかわらず、次のことも競合状態になるということですか?
int x; // global
Thread1:
Lock(m);
x=1;
Unlock(m)
Thread2:
Lock(m);
x=2;
Unlock(m);
明らかに、出力は実行順序に依存します。