在Python中以纳秒获取mach_absolute_time / UpTime()

2024-05-29 06:25:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要从一个运行在macosx10.6上的Python程序访问自启动以来经过的时间(以纳秒计)。在

我使用以下Carbon调用以C代码获取此代码:

AbsoluteTime uptimeAbs = AbsoluteToNanoseconds(UpTime());
uint64_t elapsedTime = ((uint64_t)uptimeAbs.hi << 32) + uptimeAbs.lo;

是否可以使用Carbon或PyObjC模块在Python中访问这些函数?我试过了:

^{pr2}$

但得到“NameError:name'UpTime'is not defined”(名称错误:未定义名称'正常运行时间')。在

如何从OS X上的Python访问此值?在


Tags: 模块代码程序名称lo时间pyobjchi
1条回答
网友
1楼 · 发布于 2024-05-29 06:25:14

CGEventTimestamp to NSDate的一个答案中的代码中,我找到了从10.6开始提供的-[NSProcessInfo systemUptime]。这给了我十进制秒数的时间,我可以乘以:

from Foundation import *
NSProcessInfo.processInfo().systemUptime() * 1e9

结果确实具有纳秒级的精度,应该可以很好地满足我的需要。在

更新:以下方法也有效,并且与10.5兼容:

^{pr2}$

相关问题 更多 >

    热门问题