2010-07-08 60 views

回答

0

如果你說的是程序的過程中花費的時間,程序完成後,然後做最簡單的事情是運行UNIX 「時間」功能:

# echo foo 
foo 

# time echo foo 
foo 

real  0m0.000s 
user  0m0.000s 
sys 0m0.000s 

有更多的技術答案,如果你真的需要做,而在程序運行數據收集 - 我要看看UNIX的書你...

更新:

clock_t times(struct tms * buf);

查看manpage或UNIX環境下的高級編程8.15節的詳細信息 - 史蒂文斯 - 這類問題的聖經。

更新2:

運行「特區」,在另一個進程(這就像頂部的標準輸出打印版),尋找你想要的結果,併發出信號的過程。

或者,另一個解決方案發布關於「ioreg」。然而,如果你有一個本質上類似於內核的程序,並且在其核心有一個大的動作循環,你可能會發現最好自己跟蹤未使用的循環。否則,這是一個不容小覷的問題。

+0

通過超級用戶提示符運行echo? ;) – zneak 2010-07-08 22:31:41

+0

@zneak - 是的,只要你做一個/ proc的副本,而你這樣做。 :-) – eruciform 2010-07-08 22:34:24

+0

問題已更新 – Gci1 2010-07-08 22:44:34

0

python(win)呢?像Python的標準庫中的時間模塊...?

0

您的應用程序GUI驅動?

如果是這樣,您可以在GUI啓動時啓動一個計時器,然後在頂層使用鍵盤和鼠標回調。每次鍵盤或鼠標回調被觸發時,重置計時器。否則,當計時器關閉時,處理程序代碼應暫停計數器。

如果不是,請忽略此... ;-)