[問題] 程式CPU使用率

看板C_and_CPP (C/C++)作者 (我愛阿蓉)時間16年前 (2009/08/04 16:10), 編輯推噓1(104)
留言5則, 4人參與, 最新討論串1/1
請教各位個問題 目前我用很笨的方式 程式邏輯大概是這樣 while (true) { cin>>num; if num==1 { 把資料寫出檔案} else if num==2 { matlab處理完後 讀檔案} else exit(0); } 我按下1 會把資料寫成binary file 給我用matlab寫的程式讀取後處理 這時我程式會卡在cin>>num; 我肉眼發現matlab算好了 就按下2 讓程式讀檔案然後處理 但是matlab要算很久 大概七八小時 我大概過了四五小時會發現 因為我是雙核心 matlab占50% 我的程式 是按下f5執行 (VC8寫的) 所以我在工作管理員看到的 應該是devenv.exe 他占了40趴 讓我電腦很lag (我看記憶體也沒有爆增 應該也不是memory leak之類的) 一開始不會lag 過了很久才這樣 是因為我程式邏輯寫這樣所以hold 在cin>>導致什麼原因讓我cpu使用率占很高 還是其他因素呢@@ 謝謝.... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.207.187 ※ 編輯: QQ29 來自: 140.113.207.187 (08/04 16:12)

08/04 22:39, , 1F
說不定是\n在buffer使>>num得到型別錯誤
08/04 22:39, 1F

08/04 22:40, , 2F
^^^型別不符
08/04 22:40, 2F

08/05 19:25, , 3F
請改用do while...
08/05 19:25, 3F

08/05 20:40, , 4F
請問有什麼差別嘛? 都還是停在cin>>?
08/05 20:40, 4F

08/06 16:57, , 5F
能否改用release直接run?看看還有沒有這種現象.
08/06 16:57, 5F
文章代碼(AID): #1AT-q6pa (C_and_CPP)
文章代碼(AID): #1AT-q6pa (C_and_CPP)