免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 15675 | 回复: 10
打印 上一主题 下一主题

gevent打了monkey patch后为什么socket还是阻塞 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-06-09 21:58 |只看该作者 |倒序浏览
本帖最后由 firefoxbug 于 2014-06-10 18:46 编辑

  1. import gevent.monkey
  2. gevent.monkey.patch_all()

  3. import gevent
  4. import socket

  5. def listen_sock(port):
  6.     host='127.0.0.1'
  7.     port=port
  8.     s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
  9.     s.bind((host,port))
  10.     s.listen(5)
  11.     while True:
  12.         print "start to listen"
  13.         conn,add = s.accept()
  14.         print conn,add
  15.         while True:
  16.             print conn.recv(1024)

  17. port_list = [8123, 8124]
  18. job = [gevent.spawn(listen_sock, port) for port in port_list]
  19. gevent.joinall(job)
复制代码
gevent打了monkey patch后,不是说socket都是非阻塞了吗?为什么在accept的时候还是阻塞了呢?

论坛徽章:
4
金牛座
日期:2013-10-11 16:12:50卯兔
日期:2014-07-31 09:17:19辰龙
日期:2014-08-08 09:28:02狮子座
日期:2014-09-14 20:32:05
2 [报告]
发表于 2014-06-09 22:44 |只看该作者
楼主,你太牛B了。
本主题需向作者支付 20 可用积分 才能浏览

论坛徽章:
0
3 [报告]
发表于 2014-06-10 11:58 |只看该作者
怎么解释?回复 2# ssfjhh


   

论坛徽章:
4
金牛座
日期:2013-10-11 16:12:50卯兔
日期:2014-07-31 09:17:19辰龙
日期:2014-08-08 09:28:02狮子座
日期:2014-09-14 20:32:05
4 [报告]
发表于 2014-06-10 15:24 |只看该作者
回复 3# firefoxbug


   

求职 : 系统工程师等
论坛徽章:
5
技术图书徽章
日期:2014-04-19 22:01:05天蝎座
日期:2014-05-09 13:49:28双子座
日期:2014-06-16 15:08:042015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:55:28
5 [报告]
发表于 2014-06-10 15:27 |只看该作者
霸气!!!!!!!

论坛徽章:
0
6 [报告]
发表于 2014-06-10 18:47 |只看该作者
尼玛,不好意思。。。chinaunix这设置太笨了。。。回复 5# qxhgd


   

论坛徽章:
0
7 [报告]
发表于 2014-06-10 18:48 |只看该作者
不好意思。。。没弄好,能再看看不?回复 4# ssfjhh


   

论坛徽章:
0
8 [报告]
发表于 2017-07-30 12:33 |只看该作者
回复 1# firefoxbug

有没有大神能够解答下???

论坛徽章:
0
9 [报告]
发表于 2017-07-30 12:34 |只看该作者
有没有哪位能够解释下的,我也有疑问。

论坛徽章:
1
操作系统版块每日发帖之星
日期:2016-06-12 06:20:00
10 [报告]
发表于 2017-08-31 07:42 |只看该作者
start to listen
start to listen
<socket fileno=208 sock=127.0.0.1:8123 peer=127.0.0.1:3997> ('127.0.0.1', 3997)
dfsdfsdf

<socket fileno=444 sock=127.0.0.1:8124 peer=127.0.0.1:4002> ('127.0.0.1', 4002)
sdfsf

运行正常,不知道楼主说的阻塞具体指什么场景
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP