1 編譯執行附件中的**,提交執行結果截圖,並說明程式功能
2 修改**,把同步資源個數減少為3個,把使用資源的執行緒增加到 (你的學號%3 + 4)個,編譯**,提交修改後的**和執行結果截圖。
源**:
#include #include #include #include #define num 3
int queue[num];
sem_t blank_number, product_number;
void *producer ( void * arg )
}void *consumer ( void * arg )
}int main(int argc, char *ar** )
執行結果:
程式功能:
可以將**理解為生產者消費者問題,有乙個緩衝池用於存放產品,初始狀態為空,而後每乙個生產者都要把自己生產的產品放入緩衝池,每個消費者從緩衝池中取走產品消費。在這種情況下,生產者消費者程序同步,因為只有通過互通訊息才知道是否能存入產品或者取走產品。他們之間也存在互斥,即生產者消費者必須互斥訪問緩衝池,即不能有兩個以上的程序同時進行。
**修改為
#include #include #include #include #define num 3
int queue[num];
sem_t blank_number, product_number;
void *producer ( void * arg )
}void *consumer ( void * arg )
}int main(int argc, char *ar** )
執行結果:
thread同步測試
1 編譯執行附件中的 提交執行結果截圖,並說明程式功能 2 修改 把同步資源個數減少為3個,把使用資源的執行緒增加到 你的學號 3 4 個,編譯 提交修改後的 和執行結果截圖。截圖 執行截圖 程式功能 生產者消費者模型,假定有兩個執行緒,乙個消費者執行緒,乙個生產者執行緒。乙個模擬生產者行為,乙個模...
thread同步測試
1.編譯執行附件中的 提交執行結果截圖,並說明程式功能 2 修改 把同步資源個數減少為3個,把使用資源的執行緒增加到 你的學號 3 4 個,編譯 提交修改後的 和執行結果截圖。每乙個生產者都要把自己生產的產品放入緩衝池,每個消費者從緩衝池中取走產品消費。在這種情況下,生產者消費者程序同步,因為只有通...
支援測試驅動,不支援同步測試
測試驅動是一種開發的過程,採用單元測試的方式確定開發任務,指示開發進度,我覺得好。但是同步測試是一些專案中採用開發和測試同步進行的方法,這裡的測試,是功能測試了,是那種使用者的測試。不論開發人員是否提交版本,測試人員一通測試,告訴開發人員,你現在有1千多個bug,你要改啊。然後第二天,你提交了乙個版...