作者QQ29 (我愛阿蓉)
看板C_and_CPP
標題[問題] 程式CPU使用率
時間Tue Aug 4 16:10:45 2009
請教各位個問題
目前我用很笨的方式 程式邏輯大概是這樣
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)
推 sunneo:說不定是\n在buffer使>>num得到型別錯誤 08/04 22:39
→ sunneo: ^^^型別不符 08/04 22:40
→ pico2k:請改用do while... 08/05 19:25
→ QQ29:請問有什麼差別嘛? 都還是停在cin>>? 08/05 20:40
→ slzhao:能否改用release直接run?看看還有沒有這種現象. 08/06 16:57