• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:マルチスレッドの同期方法)

マルチスレッドの同期方法

このQ&Aのポイント
  • マルチスレッドの同期方法について詳しく教えてください。
  • マルチスレッドの同期には、ミューテックスやセマフォを使用しますが、この問題を解決する方法がわかりません。
  • WinXpとVC2005を使用して、マルチスレッドの同期方法を実装したいです。ご教授いただけると幸いです。

質問者が選んだベストアンサー

  • ベストアンサー
  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

イベントオブジェクトを使えば解決できると思います。 参考↓ http://nienie.com/~masapico/api_CreateEvent.html http://www.kumei.ne.jp/c_lang/sdk/sdk_89.htm この仕様で作る場合には、PulseEventとSetEventをうまく組み合わせる必要がありますね。 http://nienie.com/~masapico/api_PulseEvent.html http://nienie.com/~masapico/api_SetEvent.html

qOat
質問者

お礼

返答遅れました。すいません。 仕様道理動作するものができました。 SetEventを五本それぞれのスレッドの最後に配置し、その直後に一本のスレッドのほうがSetEventできるEventObjectを置くことで、解決しました。結局EventObjectは6つ使用したことになります。 ただ、一本の方のスレッドの処理が一瞬なので、SetEventを処理したと直後にResetEventを処理しても間に合わず、デッドロックしてしまいます(今のところSleepさせて回避させています。)が、これは今後の課題としてとっておきます。 返答ありがとうございました。

関連するQ&A