摘要: gevent是一个基于协程的python网络库,在遇到IO阻塞时,程序会自动进行切换,可以让我们用同步的方式写异步IO代码。 结果为: gevent.spawn()方法会创建一个新的greenlet协程对象,并运行它 gevent.joinall()方法的参数是一个协程对象列表,它会等待所有的协程都 阅读全文
posted @ 2019-05-25 21:38 永恒de记忆 阅读(11209) 评论(0) 推荐(0) 编辑
摘要: 有时候需要给函数设置超时机制,以防止它卡住我们的程序,这里可以用python的signal模块,signal模块可以实现程序内部的信号处理。 输出为: 可以看到,虽然task1超时了,但是它不会影响我们程序的执行。 另外信号机制只能在主线程中生效, 意味着你不能在多线程中使用它,python已经很好 阅读全文
posted @ 2019-05-25 12:02 永恒de记忆 阅读(6594) 评论(1) 推荐(0) 编辑
摘要: 执行周期性任务 sched模块是一个通用的事件调度程序,可以对任务进行延迟调度,基于此,可以用它来实现周期性任务。 执行结果为: 任务每隔3s执行一次,周期性执行。 s.enter()方法用来加入调度事件,即将任务加入到队列中,它有四个参数,分别为:间隔时间、优先级(为两个被调度在相同时间执行的函数 阅读全文
posted @ 2019-05-25 00:54 永恒de记忆 阅读(5976) 评论(0) 推荐(1) 编辑