我有很长的TCL脚本。我想要测量进程在TCL中采用的精确cpu时间
我在TCL中尝试了time命令,但我不确定这是测量完整TCL脚本占用的cpu时间的正确方法
答案 0 :(得分:0)
Tcl本身不提供此信息。您想使用TclX软件包的times
命令。
package require Tclx
set pre [times]
# do CPU intensive operation here; for example calculating the length of a number with many digits...
string length [expr {13**12345}]
set post [times]
# the current process's non-OS CPU time is the first element; it's in milliseconds
set cpuSecondsTaken [expr {([lindex $post 0] - [lindex $pre 0]) / 1000.0}]
# The other elements are: system-cpu-time, subprocess-user-cpu-time, subprocess-system-time
当然,您依赖于正确测量此信息的操作系统。它不能移植到非POSIX系统(例如Windows),尽管在TWAPI包中可能存在逻辑相似的东西。