看板 Programming 關於我們 聯絡資訊
現在碰到一個問題... 有一個Multithread程式, 大約有15個Thread 但是跑出來速度跟預期差很多, 我想知道是哪邊拖慢了速度 首先想要知道各個Thread的執行順序, 是不是和原先想的一樣 似乎不能用printf, 因為會存取I/O會被Block住 加上現在又是Multicore的電腦, 同時會有兩個以上的Thread在跑 怎樣在VC++跟Linux下去產生這樣的Trace? 或者有圖形化介面的工具會更好 XD -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.82.178 ※ 編輯: scaaa 來自: 140.116.82.178 (07/25 09:07)
jlovet:如果是thread...怎麼可以管到執行順序?140.123.216.204 07/25 13:19
liangjr:gprof? 但要用在multithread要動點手腳 76.95.86.77 07/25 13:49
sb5471:VC 有個Tool-Process Viewer 60.250.190.103 07/25 17:48
sb5471:不過還是無法知道順序, 將就點用吧 60.250.190.103 07/25 17:49
yoco315:看不懂.. 140.114.78.40 07/26 12:25
liptonbin:在每個THRAD加變數 最後整個RUN完印出勒123.193.169.246 07/26 14:09
scaaa:樓上的變數會用到Shared Varaible嗎?122.121.190.238 07/26 23:03
scaaa:怕新加進了同步機制, 會抓到不原先的問題 @@122.121.190.238 07/26 23:05
GERRYccc:印出 Thread No ~ 應該可以知道是哪一個 118.232.57.45 07/26 23:06
new9999:程式執行前先做個暫停的動作 用工作管理員 118.161.131.4 07/31 23:54
new9999:將你的程式先指定到只有一個cpu在執行他 118.161.131.4 07/31 23:55
new9999:確定執行後再run 這樣比較能夠看執行順序 118.161.131.4 07/31 23:56