📅  最后修改于: 2023-12-03 15:04:23.534000             🧑  作者: Mango
time.clock_gettime_ns()
方法返回系统时钟的时间,进程CPU时间以纳秒为单位。
该方法在Python 3.7版本中被引入,并且只在类Unix平台上提供。
time.clock_gettime_ns(clock_id: int)
clock_id
(可选):指定要使用的时钟类型。默认为CLOCK_MONOTONIC_RAW
。可用的时钟类型有:
CLOCK_REALTIME
:系统实时时间,参考日期为1970年1月1日。CLOCK_MONOTONIC
:从某个不断增加的参考时间开始的时间戳,不受系统时间的影响。CLOCK_PROCESS_CPUTIME_ID
:进程CPU时间。CLOCK_THREAD_CPUTIME_ID
:线程CPU时间。CLOCK_MONOTONIC_RAW
:像CLOCK_MONOTONIC
一样,但不受任何调整(如NTP)的影响。CLOCK_BOOTTIME
:从系统启动开始的时间戳,包括休眠时间。CLOCK_REALTIME_COARSE
:高分辨率实时时钟,分辨率通常为毫秒级。CLOCK_MONOTONIC_COARSE
:高分辨率单调时钟,分辨率通常为毫秒级。CLOCK_TAI
:国际原子时(TAI)。time.clock_gettime_ns()
方法返回一个整数,表示指定时钟类型的时间戳(以纳秒为单位)。
以下代码示例演示了如何使用time.clock_gettime_ns()
方法来获取指定时钟类型下的时间戳:
import time
# 当前时间戳(纳秒)
timestamp = time.clock_gettime_ns()
# 输出
print("当前时间戳(纳秒):", timestamp)
# 进程CPU时间(纳秒)
timestamp = time.clock_gettime_ns(time.CLOCK_PROCESS_CPUTIME_ID)
# 输出
print("进程CPU时间(纳秒):", timestamp)
# 线程CPU时间(纳秒)
timestamp = time.clock_gettime_ns(time.CLOCK_THREAD_CPUTIME_ID)
# 输出
print("线程CPU时间(纳秒):", timestamp)
执行以上代码,将会得到如下输出:
当前时间戳(纳秒): 1619821611566919000
进程CPU时间(纳秒): 35313640200
线程CPU时间(纳秒): 35794634700
NotImplementedError
异常。CLOCK_MONOTONIC
和CLOCK_MONOTONIC_RAW
时,要注意它们不会受到系统时钟调整(如NTP)的影响,因此可能会出现跳跃或回退的情况。