運行時間的觀察--watch窗口的技巧續

   微軟精心打造的VC調試器確實非常方便,再來看個watch窗口的小技巧:用作計時器

  有時候可能想要知道個函數或者一段代碼運行需要的粗略時間。一般是假如一些計時的處理,比如函數開始時調用GetTickCount()記錄開始時間,完了在調用一邊獲得結束時間,一減就出來~~ 不復雜,但是確實需要動代碼。實際上調試器中的watch窗口就能幫你簡單的完成這個功能。
初始狀態
很簡單的代碼,main函數中調用Sleep(1000)延時1000毫秒,再調用自定義的MyDelay(100)延時100毫秒,總共延時1100毫秒。在vc6中輸入代碼後,在Sleep(1000)和return 0;這兩行各設置一個斷點,然後按F5進入調試狀態。調試器會停在Sleep(1000)這行。這時候在Watch窗口中輸入@clk/1000,這時候看到Value是816(每次都會不一樣,不精確嘛!)。這是說明從程序啓動到被斷點截下,總共花了816毫秒。@clk是個僞寄存器,計時用,單位是微妙。
接下來,再輸入一個@clk=0,會看到@clk/1000的值也清零了。如下圖:
計數清零
按F5繼續運行,在return 0;這行斷下來,也就是說延時1100ms後,我們看到@clk/1000的值變化了。
結果圖
@clk/1000的Value是1108ms,粗略的計時還是沒問題的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章