Chương trình sản xuất tiêu thụ P1 -> P2 -> P3
3 posters
Trang 1 trong tổng số 1 trang
Chương trình sản xuất tiêu thụ P1 -> P2 -> P3
Tối qua thầy cho bài sản xuất tiêu thụ yêu cầu P1 chạy trước, rồi đến P2, rồi đến P3. Mình làm và gởi lên diễn đàn, rất mong sự góp ý của các bạn và của thầy để mình hiểu rõ hơn nữa.
- Đoạn Code P1 :
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH");
printf("P1 chạy xong ! \n\n");
printf("Bấm phím bất kỳ để P2 chạy tiếp:");
getch();
ReleaseSemaphore(semSynch, 1, 0);
return 0;
}
- Đoạn Code P2 :
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch,semSynch1;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH");
printf("Đang chờ P1 chạy trước...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("P2 chạy xong !\n\n");
semSynch=CreateSemaphore(0, 0, 1, "SYNCH1");
printf("Bấm phím bất kỳ để P3 chạy tiếp:");
getch();
ReleaseSemaphore(semSynch1, 1, 0);
return 0;
}
- Đoạn Code P3:
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch1;
int main(){
semSynch1=CreateSemaphore(0, 0, 1, "SYNCH1");
printf("Đang chờ P2 chạy trước...\n\n");
WaitForSingleObject(semSynch1, INFINITE);
printf("P3 chạy xong !\n\n");
printf("Bấm phím bất kỳ để thoát:");
getch();
return 0;
}
Thân chào.
- Đoạn Code P1 :
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH");
printf("P1 chạy xong ! \n\n");
printf("Bấm phím bất kỳ để P2 chạy tiếp:");
getch();
ReleaseSemaphore(semSynch, 1, 0);
return 0;
}
- Đoạn Code P2 :
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch,semSynch1;
int main(){
semSynch=CreateSemaphore(0, 0, 1, "SYNCH");
printf("Đang chờ P1 chạy trước...\n\n");
WaitForSingleObject(semSynch, INFINITE);
printf("P2 chạy xong !\n\n");
semSynch=CreateSemaphore(0, 0, 1, "SYNCH1");
printf("Bấm phím bất kỳ để P3 chạy tiếp:");
getch();
ReleaseSemaphore(semSynch1, 1, 0);
return 0;
}
- Đoạn Code P3:
#include <stdio.h>
#include <conio.h>
#include <windows.h>
HANDLE semSynch1;
int main(){
semSynch1=CreateSemaphore(0, 0, 1, "SYNCH1");
printf("Đang chờ P2 chạy trước...\n\n");
WaitForSingleObject(semSynch1, INFINITE);
printf("P3 chạy xong !\n\n");
printf("Bấm phím bất kỳ để thoát:");
getch();
return 0;
}
Thân chào.
phamvietthanh- Tổng số bài gửi : 32
Join date : 19/02/2009
Age : 44
Re: Chương trình sản xuất tiêu thụ P1 -> P2 -> P3
Bạn chỉ thực hiện cho Producer, thế còn Comsumer thì sao bạn?
seaman- Tổng số bài gửi : 33
Join date : 23/02/2009
Re: Chương trình sản xuất tiêu thụ P1 -> P2 -> P3
Đây là bài tập giải quyết vấn đề đoạn tương tranh bằng cờ hiệu chứ không phải là sản xuất tiêu thụ, dĩ nhiên chúng ta sẽ áp dụng giải pháp cờ hiệu vào việc giải quyết bài toán sản xuất tiêu thụ nhưng ở đây 3 cái bài tập thầy cho chỉ đơn thuần là về vấn đề cờ hiệu thôiseaman đã viết:Bạn chỉ thực hiện cho Producer, thế còn Comsumer thì sao bạn?
Theo mình chỉ cần làm đơn giản như thế này cho dễ hiểu :
Cấu trúc P1 | Cấu trúc P2 | Cấu trúc P3 |
S1 | wait(synch) | wait(synch1) |
signal(synch) | S2 | S3 |
signal(synch1) |
asmking- Tổng số bài gửi : 137
Join date : 19/03/2009
Similar topics
» Chương trình sản xuất tiêu thụ P1 chạy trước P2 và P3
» Thảo luận Bài 7
» Phát biểu bài toán Sản xuất-Tiêu thụ với giải pháp đồng bộ hóa công việc các tiến trình sãn xuất-tiêu thụ bằng 3 đèn hiệu
» Ôn tập chuẩn bị Thi hết môn
» Thảo luận Bài 4
» Thảo luận Bài 7
» Phát biểu bài toán Sản xuất-Tiêu thụ với giải pháp đồng bộ hóa công việc các tiến trình sãn xuất-tiêu thụ bằng 3 đèn hiệu
» Ôn tập chuẩn bị Thi hết môn
» Thảo luận Bài 4
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