返回信息流废话不多说 先上代码:
from gevent import monkey; monkey.patch_all()
import gevent
import datetime
def f2(x,i,start):
while 1:
x[i]=x[i]+1
thistime=datetime.datetime.now().timestamp()
if thistime-start>2.0:
break
if x[i]%1000==0:
gevent.sleep(0)
gevent.sleep(0)
b=[0,0,0]
starttime=datetime.datetime.now().timestamp()
gevent.joinall([
gevent.spawn(f2, b,0,starttime),
gevent.spawn(f2, b,1,starttime),
gevent.spawn(f2, b,2,starttime),
])
print(b)
就是这么简单一份自己写的测试性能的代码,不知为何在windows的ipython上进程不能结束,linux的ipython上报错The history saving thread hit an unexpected error (LoopExit('This operation would block forever', <Hub at 0x7f67162836d0 epoll pending=0 ref=0 fileno=8>)).History will not be written to the database.
网上各种搜,最后发现别人引发错误的原因都是很复杂地,这个这么简单的程序完全不能理解为何joinall不能顺利结束
我的信心受到亿万点伤害,第一次在绝望中发帖求救,望各位同学指教
这是一条镜像帖。来源:北邮人论坛 / acm-icpc / #94880同步于 2018/1/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ACM_ICPC机器人发帖
【问题】堂堂大北邮有没有用过gevent的同学能赐教为何我这个30
Z2012210314
2018/1/24镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
你用的什么版本的python呀,datetime.datetime.now().timestamp() 这句不报错?
gevent没啥问题,不会报错,正常结束。
【 在 Daci 的大作中提到: 】
: 你用的什么版本的python呀,datetime.datetime.now().timestamp() 这句不报错?
: gevent没啥问题,不会报错,正常结束。
python 3.6.1 ipython5.3.0 ,后来问作者发现是ipython和gevent兼容性不好,谢谢关注