gpt4 book ai didi

tcl - 如何查看tcl中CPU的数量?

转载 作者:行者123 更新时间:2023-12-02 11:28:15 28 4
gpt4 key购买 nike

我使用的软件支持多线程和TCL接口(interface)。所以我不知道如何找到TCL中的CPU数量来限制最大线程。

最佳答案

Tcl 中没有内置任何内容;它已经被讨论过,但没有采取行动,因为 CPU 的数量不一定是进程可能使用的数量(到目前为止,这是获取该信息的最相关原因)。也就是说,该信息是可用的。只是不同平台获取信息的方式有所不同。

proc numberOfCPUs {} {
# Windows puts it in an environment variable
global tcl_platform env
if {$tcl_platform(platform) eq "windows"} {
return $env(NUMBER_OF_PROCESSORS)
}

# Check for sysctl (OSX, BSD)
set sysctl [auto_execok "sysctl"]
if {[llength $sysctl]} {
if {![catch {exec {*}$sysctl -n "hw.ncpu"} cores]} {
return $cores
}
}

# Assume Linux, which has /proc/cpuinfo, but be careful
if {![catch {open "/proc/cpuinfo"} f]} {
set cores [regexp -all -line {^processor\s} [read $f]]
close $f
if {$cores > 0} {
return $cores
}
}

# No idea what the actual number of cores is; exhausted all our options
# Fall back to returning 1; there must be at least that because we're running on it!
return 1
}

请注意,如果您希望找出要运行的 CPU 数量,那么您真正想要的是 CPU 关联掩码中设置的位数。不幸的是,在大多数平台上检索该信息并非易事。

关于tcl - 如何查看tcl中CPU的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29482303/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com