我希望得到时间,以完成一个往返到服务器使用TCP。使用windows客户端时。 (我会使用ping,但服务器正在阻止它)
我正在考虑使用python和sockets来完成这项工作,目前我已经完成了。在
import time
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM )
start = time.time()
s.connect(('localhost',80))
print 'time taken ', time.time()-start ,' seconds'
s.close()
我的问题是我不认为连接计时器是工作的,因为我经常得到相同的时间戳返回。有人能给我指出解决这个问题的正确方向吗。在
使用以下修改后的脚本,我得到的结果与Windows7上的
ping
相同。在ping本地主机总是给我相同的非常小的值。这可能就是问题所在。在
在Windows上,} ,它在Windows上的分辨率约为1/3微秒,而不是:
time.time()
值没有足够的粒度(只有1/60秒)。使用^{这是^{} module 使用的同一个计时器;您可以使用.default_timer()定义来代替:
^{pr2}$这也适用于python2,其中} 将引用您的操作系统的最佳可用计时器(
time.perf_counter()
不可用,但^{time.clock()
,在Windows上,该计时器的分辨率约为第二个分辨率的1/100,在其他系统上为time.time()
)。在相关问题 更多 >
编程相关推荐