我已阅读this question,但我希望获得比一秒更好的计时精度:这是否可以通过libc的某些功能实现?
这是在with nogil
内部使用,所以当然不允许使用Python ......
答案 0 :(得分:4)
您可以使用POSIX clock_gettime():
from posix.time cimport clock_gettime, timespec, CLOCK_REALTIME
cdef timespec ts
cdef double current
clock_gettime(CLOCK_REALTIME, &ts)
current = ts.tv_sec + (ts.tv_nsec / 1000000000.)
此代码段在current
内存储自纪元以来的秒数,精度高达纳秒(取决于您的系统)。
您也可以使用gettimeofday(),但现已弃用:
POSIX.1-2008将gettimeofday()标记为已过时,建议使用clock_gettime(2)。
答案 1 :(得分:-3)
为什么不使用日期时间?例如,datetime.datetime.now()将为您提供当前时间值,包括毫秒。