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中使用字段的最有效方式是什么?
- 11. 在MySQL中存储URL的最有效方式是什么?
- 12. 在IE8 +中添加元素的最有效方式是什么?
- 13. 在Python中与集合相交的最有效方式是什么?
- 14. Python - 什么是生成填充最有效的方法?
- 15. 什么是导航到XAML页面的最有效方式? wp8
- 16. 什么是移动UIImageView最有效的方式?
- 17. 什么是从TCPServer读取最有效的方式?
- 18. 什么是使用PHP填充表格的最有效方式?
- 19. rails:什么是最有效的存储会话方式?
- 20. 什么是实现游戏计时器的最有效方式
- 21. 什么是使用java读取文件的最有效方式?
- 22. 什么是使用核心数据的最有效方式?
- 23. 与Singleton交互的最有效方式是什么?
- 24. 什么是最有效的并行实施方式?
- 25. 什么是存储分析信标的最有效方式?
- 26. 什么是记录极少量数据的最有效方式?
- 27. 在页面上包含API的最有效方式是什么?
- 28. 什么是结合switch/if语句的最有效方式
- 29. 什么是最有效的方式来处理这个功能?
- 30. 什么是使用Android相机最有效的方式?
高效的资源? –
CPU使用率,精度。 – edgarstack
什么阻止你测试和比较两者? –