Python 3.x Python的time.monotonic()是否在多个线程中保持一致?

Python 3.x Python的time.monotonic()是否在多个线程中保持一致?,python-3.x,time,python-multithreading,Python 3.x,Time,Python Multithreading,Python的状态文档: 返回单调时钟的分数秒值,即不能倒转的时钟。时钟不受系统时钟更新的影响。返回值的参考点未定义,因此只有连续调用结果之间的差异才有效 3.3版中的新版本 在版本3.5中更改:该功能现在始终可用,并且始终在系统范围内 最后一句话是否意味着对于Python>=3.5,time.monotonic返回的值可以安全地在多个线程之间使用和比较?我遇到了同样的问题,似乎没有,线程之间的差异大约为10微秒 我使用的是Linux、Python 3.7.5、内核5.3.0-40-generi

Python的状态文档:

返回单调时钟的分数秒值,即不能倒转的时钟。时钟不受系统时钟更新的影响。返回值的参考点未定义,因此只有连续调用结果之间的差异才有效

3.3版中的新版本

在版本3.5中更改:该功能现在始终可用,并且始终在系统范围内


最后一句话是否意味着对于Python>=3.5,time.monotonic返回的值可以安全地在多个线程之间使用和比较?

我遇到了同样的问题,似乎没有,线程之间的差异大约为10微秒


我使用的是Linux、Python 3.7.5、内核5.3.0-40-generic、CPU AMD Ryzen 5 3600,我遇到了同样的问题,但似乎没有,线程之间的差异约为10微秒


我使用的是Linux、Python 3.7.5、内核5.3.0-40-generic、CPU AMD Ryzen 5 3600

您是如何衡量这一点的?10微秒相当于使用队列或标准输出收集结果的抖动。两个线程都将单调函数的结果存储到字典中。一个发送ICMP ping,另一个接收它。在pinglocalhost上,接收方的单调结果是在发送方发送之前10微秒。单调呼叫是在实际数据包发送之前,在select呼叫之后的接收方。您是如何衡量这一点的?10微秒相当于使用队列或标准输出收集结果的抖动。两个线程都将单调函数的结果存储到字典中。一个发送ICMP ping,另一个接收它。在pinglocalhost上,接收方的单调结果是在发送方发送之前10微秒。单调呼叫发生在实际数据包发送之前,而在接收端发生在select呼叫之后。