2
A
回答
3
问题的答案取决于你的努力来实现:
time.sleep(delayTime):
- 措施:暂停当前线程的执行对于给定秒数。
- 任何捕获信号将终止睡眠()以下的该信号的捕捉常规
select.select执行([],[],[],delayTime):
这是一个简单的接口到Unix select()
系统调用。前三个参数是'可等待对象的序列:
- 的rlist:等到读就绪
- wlist:等到准备好写
- 的Xlist:等待“异常条件”
所以现在,在了解了两个接口之后,我们可以理解答案取决于目的:
如果您只想暂停当前线程 - 第一个选项更简单。但是如果有对象等待 - 使用第二种方法。 在效率的温度 - 我不认为如果你正在寻找的是最简单的用例(只是暂停主线程),那么不存在差异。
1
非常简单的hackup python中的测试与调用timeit
,但我爱ipython进行快速测试(http://ipython.org/)。这里是我的结果:
$ ipython
import time,select
%timeit time.sleep(0)
1000000 loops, best of 3: 655 ns per loop
%timeit select.select([],[],[],0)
1000000 loops, best of 3: 902 ns per loop
但是,如果你没有获得IPython的,并会在命令行更喜欢本土timeit
:
$ python -m timeit -s "import time,select" "time.sleep(0)"
1000000 loops, best of 3: 0.583 usec per loop
$ python -m timeit -s "import time,select" "select.select([],[],[],0)"
1000000 loops, best of 3: 0.777 usec per loop
1
你如何定义效率?在大多数情况下,sleep和select一直用来观察是否有空间/缓冲区。如果空间不可用,那么我们可以选择等待并查看缓冲区何时为空,并且我们可以执行我们的操作。 sleep()在内部选择()。所以,我想你认为这很重要。
相关问题
- 1. 什么是在c中任意时间“睡眠”的最有效方法?
- 2. 实现睡眠函数JavaScript的最佳方式是什么?
- 3. 睡眠模式和深度睡眠模式有什么区别?
- 4. Python:睡眠方法
- 5. 什么是在Python中遍历树的最有效方法?
- 6. 在Python中实现并发的最有效方法是什么?
- 7. 什么是iOS的睡眠功能
- 8. 在UNIX系统上调用睡眠(0)的效果是什么?
- 9. 什么是最有效的方式来处理Python中的错误?
- 10. 在MySQL中存储URL的最有效方式是什么?
- 11. 什么是在Android中运行Cursor的最有效方式?
- 12. 在MySQL中使用字段的最有效方式是什么?
- 13. 在scala中运行期货的最有效方式是什么?
- 14. 在IE8 +中添加元素的最有效方式是什么?
- 15. 在Python中与集合相交的最有效方式是什么?
- 16. Python - 什么是生成填充最有效的方法?
- 17. 适当的睡眠方式在等待锁定期间睡眠
- 18. 什么是防止OS X睡眠的正确方法?
- 19. 睡眠和睡眠有没有区别?
- 20. 什么是最有效的方式截断这张表?
- 21. 什么是PHP和JavaScript传输数据的最有效方式?
- 22. 什么是记录极少量数据的最有效方式?
- 23. 什么是使用Android相机最有效的方式?
- 24. 什么是最有效的并行实施方式?
- 25. 什么是生成缩略图最有效的方式?
- 26. 渲染动态菜单的最有效方式是什么
- 27. 什么是动态创建类实例的最有效方式?
- 28. 什么是实现游戏计时器的最有效方式
- 29. rails:什么是最有效的存储会话方式?
- 30. SVN更新:使用它的最有效方式是什么?
高效的资源? –
CPU使用率,精度。 – edgarstack
什么阻止你测试和比较两者? –