剛進入編程不久,對一些有效的方法不太知道,在這里看看有沒有比較好的方法。我的任務是使用MFC控制三個別人寫好的軟體按一定的順序進行測驗,三個軟體使用順序隨機,在我寫的軟體需要每次打開同一個軟體16個,然后開始后會在我的界面上監測軟體的測驗資料(要開16個執行緒進行監測)。進行使用如:A:測驗磁盤速度的軟體,B:測驗磁盤好壞的軟體 C:測驗磁盤資料是否丟失的軟體,規則:在A進行測驗速度的時候其他兩個軟體要等待A全部測驗(16個)完畢才能開始。其他兩個B,C不需要等待,只要16個中某一個B執行完則執行C,或者C執行完就執行B。目前我使用的方法就是在主執行緒回圈開啟16個,然后將執行緒的句柄放入佇列deque中,然后在執行緒中某一個結束,就用SengMessage發送對應的16個中哪一個結束后給主執行緒視窗開啟下一個。在我需要中途結束測驗時就是通過使用佇列中的執行緒句柄來關閉執行緒打開的軟體后結束。但是感覺這方法不太靈活,想看看各位大佬根據經驗怎么設計,謝謝!下圖是軟體資料顯示圖:

uj5u.com熱心網友回復:
后臺執行緒 + 狀態機模型uj5u.com熱心網友回復:
能詳細點嗎?
uj5u.com熱心網友回復:
多執行緒+執行緒通行
uj5u.com熱心網友回復:
《Windows核心編程》uj5u.com熱心網友回復:
好像有點復雜uj5u.com熱心網友回復:
好像有點復雜2個執行緒不行嗎
一個執行緒UI
另一個逐一輪詢你打開的軟體
第二個執行緒根本不牽涉到多執行緒,邏輯也好寫啊
甚至1個執行緒,UI或許會卡點,不行嗎?
uj5u.com熱心網友回復:
主要有時候會使用單個點擊開始,有時候是全部一鍵開始
uj5u.com熱心網友回復:
一個執行緒UI,另個十六個執行緒分別分析 單個執行緒控制 A,B,C的狀態,分別判斷各個軟體的運行狀態,順序執行即可。。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/62506.html
標籤:界面
上一篇:還是要請蔣晟老師和趙4老師等高手幫我指點迷津,替換OCX的問題
下一篇:MFC,界面閃爍問題
