はきだめC/C++下級者の質問箱 2
at TECH
227:デフォルトの名無しさん
06/10/17 05:34:19
>>226
初心者なので、せっかくヒントもいただいたので、
セマフォも勉強したいと思いまして。
現状ですが悪戦苦闘中でして、下記のコードになりました。
void thread_A(){
while(1){
WaitForSingleObject(hSemaphore,INFINITE);
printf("AのWaitForSingleObject1を通過\n");
WaitForSingleObject(hSemaphore,INFINITE);
printf("AのWaitForSingleObject2を通過\n");
for(int i=0;i<5;i++){
printf("Aの処理中なのでB,C割り込んじゃダメ\n");
//Sleep(1000);
}
ReleaseSemaphore(hSemaphore,2,NULL);
}
}
void thread_B(){
while(1){
//1回待つ
WaitForSingleObject(hSemaphore,INFINITE);
printf("BのWaitForSingleObjectを通過\n");
//セマフォ1つ開放
ReleaseSemaphore(hSemaphore,1,NULL);
printf("Bのセマフォ1つ開放しました\n");
//Sleep(1000);
}
}
//Cも同様
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4864日前に更新/249 KB
担当:undef