Win32API質問箱 Build62 at TECH
[2ch|▼Menu]
632:デフォルトの名無しさん
08/02/21 09:33:38
>>630
使い方・・・ねぇ
例えば LONG 変数があったとして、
LONG x;
この値を普通に操作すると、スレッド間で競合が起きるだろ?
BOOL Lock() {
 if (x == 0) { x = 1; return true; }
 else { return false; }
}
void Unlock() {
 x = 0;
}
InterlockedExchangeを使えば、そういった問題は起きない
BOOL Lock() {
 if (InterlockedExchange(&x, 1) == 0) { return true; }
 else { return false; }
}
void Unlock() {
 InterlockedExchange(&x, 0);
}
こんな例でわかるかなぁ・・・


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4409日前に更新/212 KB
担当:undef