Python time.pthread_getcpuclockid()函数
pthread_getcpuclockid()函数返回指定 thread_id 的线程特定 CPU 时间时钟的时钟 id。线程 ID 是从该程序正在运行的不同线程中获取的。可以使用Python中线程类的 'ident' 字段获取线程 ID。创建一个类、将其声明为线程并获取其 id 的简单片段如下所示:
Python3
from threading import Thread
class Hello(Thread):
def run(self):
pass
# code to be executed in this thread
helloobj = Hello()
helloobj.start()
print(helloobj.ident)
Python3
from threading import Thread
import time
class Hello(Thread):
def run(self):
print("thread 1")
helloobj = Hello()
helloobj.start()
print(time.pthread_getcpuclockid(helloobj.ident))
输出:
140388898805504
句法:
time.pthread_getcpuclockid(thread_id)
time.pthread_getcpuclockid(int)函数接受一个整数参数,即线程 ID,并以整数形式返回 CPU 时钟 ID。获取 CPU 时钟 id 的完整程序片段如下:
使用此方法时,应在调用“ident”字段之前启动线程。
Python3
from threading import Thread
import time
class Hello(Thread):
def run(self):
print("thread 1")
helloobj = Hello()
helloobj.start()
print(time.pthread_getcpuclockid(helloobj.ident))
输出:
thread 1
-24186
注意:调用 start() 方法时将运行的第一个函数是 run() 方法。在类中声明 run() 方法很重要,因为它将在内部由 start() 方法调用。此外,python3 或更高版本对于此函数工作是绝对必要的,否则您可能会遇到 AttributeError。