Bài giải: chạy xoay vòng với 3 tiến trình P1,P2,P3
Trang 1 trong tổng số 1 trang
Bài giải: chạy xoay vòng với 3 tiến trình P1,P2,P3
P1 Chạy xong bật đèn xanh cho P2 sau đó P2 chạy xong bật đèn xanh cho P3 chạy.
Các bạn tạo 3 tiến trình P1,P2,P3 như sau:
Code P1:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH12");
printf("P1 chay xong ! \n\n");
printf("Bam phim bat ky de P2 chay tiep:");
getch();
ReleaseSemaphore(semSynch, 1, 0);
return 0;
}
Code P2:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH12");
printf("Dang cho P1 chay truoc...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("P2 chay xong !\n\n");
semSynch=CreateSemaphore(0, 0, 1, "SYNCH23");
printf("Bam phim bat ky de P3 chay tiep:");
getch();
ReleaseSemaphore(semSynch,1,0);
return 0;
}
Code P3:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH23");
printf("Dang cho P2 chay truoc...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("Bam phim bat ky de thoat:");
getch();
return 0;
}
Chúc các bạn thành công.
Các bạn tạo 3 tiến trình P1,P2,P3 như sau:
Code P1:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH12");
printf("P1 chay xong ! \n\n");
printf("Bam phim bat ky de P2 chay tiep:");
getch();
ReleaseSemaphore(semSynch, 1, 0);
return 0;
}
Code P2:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH12");
printf("Dang cho P1 chay truoc...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("P2 chay xong !\n\n");
semSynch=CreateSemaphore(0, 0, 1, "SYNCH23");
printf("Bam phim bat ky de P3 chay tiep:");
getch();
ReleaseSemaphore(semSynch,1,0);
return 0;
}
Code P3:
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH23");
printf("Dang cho P2 chay truoc...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("Bam phim bat ky de thoat:");
getch();
return 0;
}
Chúc các bạn thành công.
vhoanghung- Tổng số bài gửi : 76
Join date : 19/03/2009
Age : 39
Đến từ : Ho Chi Minh
Similar topics
» Thảo luận Bài 4
» Thảo luận Bài 4
» Thảo luận Bài 4
» Thảo luận Bài 4
» Lập trình Bài toán Sản xuất-Tiêu thụ dùng semFull-semEmpty-CritSec
» Thảo luận Bài 4
» Thảo luận Bài 4
» Thảo luận Bài 4
» Lập trình Bài toán Sản xuất-Tiêu thụ dùng semFull-semEmpty-CritSec
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết