はきだめC/C++下級者の質問箱 2
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
200:デフォルトの名無しさん 06/10/15 18:03:24 1.マルチスレッドプログラミング相談室に行く 2.Win32API質問箱に行く 3.最高にド低脳な発言してください in ム板に行く 201:デフォルトの名無しさん 06/10/15 18:24:04 クリティカルセクションだし 202:デフォルトの名無しさん 06/10/15 18:25:50 セマフォでも使えば? 203:デフォルトの名無しさん 06/10/15 22:09:46 >>200 スレッドご紹介ありがとうございます。 前に専門スレいったことあるのですが、初心者スレ行けって いわれたこがあったりしたので難しいです。(汗 移動しようと思いましたが回答いただけたので、 今回はすみませんがよろしくお願いします。 204:デフォルトの名無しさん 06/10/15 22:10:38 >>201,202 クリティカルセッションじゃダメですか。 セマフォじゃないのですが考えてみました。 グローバル変数flagを使います。 flagが1の時、スレッドAは実行、他B,Cは待機(Sleep) flagが0の時、スレッドB,Cは実行、Aは実行しない(待機もしない) void thread_A(void){ while(1){ //はじめにflagを立てる flag=1; //いろんな処理 //Aの処理が終わるので寝てたB,Cを起こすためflag=0 flag=0; } } void thread_B(void){ while(1){ //はじめにflagをチェックして、値が1ならSleep while(flag==1){Sleep(1000);} //いろんな処理 } } //thread_Cも同様の内容です これで実現できそうです。 セマフォについてですが、今回の処理に当てはめて考えるのが難しいのですが、 スレッドA,B,Cそれぞれ、どのような処理が必要かヒントいただけないでしょうか。
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4761日前に更新/249 KB
担当:undef