Sử dụng monitor để thực hiện loại trừ tương hỗ cho bài toán Người sản xuất, người tiêu dùng với bộ đệm hạn chế.
Câu trả lời (1)
-
monitor BoundedBuffer
product buffer[N]; //bộ đệm chứa N sản phẩm kiểu product
int count; //số lượng sản phẩm hiện thời trong bộ đệm
condition notFull, notEmpty; //các biến điều kiện
public:
boundedbuffer( ) { //khởi tạo
count = 0;
}
void append (product x) {
if (count == N)
notFull.cwait ( ); //dừng và chờ đến khi buffer có chỗ
<Thêm một sản phẩm vào buffer>
count++;
notEmpty.csignal ();
}
product take ( ) {
if (count == 0)
notEmptry.cwait (); //chờ đến khi buffer không rỗng
<Lấy một sản phẩm x từ buffer>
count --;
notFull.csignal ( );
}
}
void producer ( ) { //tiến trình người sản xuất
for (;;){
<Sản xuất sản phẩm x>
BoundedBuffer.append (x);
}
}
void consumer ( ) { //tiến trình người tiêu dùng
for (;;){
product x = BoundedBuffer.take ();
<Tiêu dùng x>
}
}
void main() {
Thực hiện song song producer và consumer.
}
bởi Hoa Lan 26/11/2021Like (0) Báo cáo sai phạm
Nếu bạn hỏi, bạn chỉ thu về một câu trả lời.
Nhưng khi bạn suy nghĩ trả lời, bạn sẽ thu về gấp bội!
Lưu ý: Các trường hợp cố tình spam câu trả lời hoặc bị báo xấu trên 5 lần sẽ bị khóa tài khoản
Các câu hỏi mới
-
01/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
VIDEOYOMEDIA
01/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
02/12/2022 | 1 Trả lời
-
01/12/2022 | 1 Trả lời
-
A. Ubuntu.
B. BKAV.
C. Kapersky.
D. Antivirus.
01/12/2022 | 2 Trả lời
-
A. Worm, sâu máy tính
B. Trojan
C. Virus
D. BKAV.
19/12/2022 | 1 Trả lời
-
Nhập vào danh sách b với n phần tử số nguyên. Hãy tính tổng các phần tử lẻ trong b
17/02/2023 | 0 Trả lời
-
Khi đó vòng biểu diễn bởi một xâu S gồm N ký tự trong tập ['1'...'9']. Để tăng tính độc đáo cho vòng trang sức quý này, người ta lắp khóa đẹp vào vị trí sao cho khi mở vòng ra được một dãy đá quý có tính chất không phụ thuộc vào việc cầm đầu dây này bên tay phải dầu kia bên tay trái hay ngược lại ta đều được chuỗi giống nhau tức là viên đá thứ i từ trái sang luôn có màu gì không phụ thuộc vào cách cầm Hãy đếm số cách đặt khóa
Ví dụ: xâu S: 222222335533
+222334433222
+533222222335
Viết chương trình trong python
03/04/2023 | 0 Trả lời
-
In và đếm các số nguyên tố có trong danh sách
05/04/2023 | 0 Trả lời
-
Cho a là 1 danh sách chỉ gồm các số nguyên. Hãy viết chương trình tạo và in ra dsach b chỉ gồm các số chẵn trong a?
05/04/2023 | 0 Trả lời
-
a. Đếm và thông báo số từ trong xâu đó
b. Thông báo ra màn hình từ đầu tiên của xâu
25/04/2023 | 0 Trả lời