免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: fandatou
打印 上一主题 下一主题

请问pyhon开多线程费内存吗 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2006-11-14 13:53 |只看该作者
原帖由 fandatou 于 2006-11-13 23:36 发表
每干啥,就是抓下来网页用正则把需要的数据取下来。刚修改了下程序,不指定每次线程启动数,程序效率提升不少,从33/分钟 提升到50个/分钟. 内存就剩下1008k。

我的程序就是单线程也一样运行时间长了就会占用很 ...



时间长了就会占用很大内存??
检查下是不是没有释放什么变量致使持续变大
据我所知perl里定义个ref,undef后不会释放内存,但是新生成的ref会利用原undef的内存
所以如果不是持续抢占地盘应该没有那么夸张
等待flw出现...

论坛徽章:
0
12 [报告]
发表于 2006-11-14 17:14 |只看该作者
那有可能是你的垃圾回收管理真的没起作用……
不过这样的可能性不太大。

PYTHON的垃圾回收机制似乎是根据数量来定的,到达一定数量后启动gc.collect()
这也许是为了效率。

这就造成了使用pygtk时gtk.gdk.pixbuf的困惑:pixbuf每个都可能占用数MB甚至数十MB的内存,十个PIXBUF就有可能把内存耗光。而10个PIXBUF被DEL的时候,gc.collect()一般是不会自动启动的,需要手工调用。

论坛徽章:
0
13 [报告]
发表于 2006-12-10 16:45 |只看该作者
经过测试python不费内存,程序跑起来只有了41M内存,其中包含一个9M的 list,CPU倒是一直100%
跟我的perl倒是相得益彰,一个用内存一个用cpu,各取所需

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
14 [报告]
发表于 2006-12-11 12:45 |只看该作者
blem* 同学,请不要诽谤,编辑一下你的发言。

论坛徽章:
0
15 [报告]
发表于 2006-12-11 12:54 |只看该作者
原帖由 flw 于 2006-12-11 12:45 发表
blem* 同学,请不要诽谤,编辑一下你的发言。


'bleem1998'貌似不匹配'blem*'
看来不是说我

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
16 [报告]
发表于 2006-12-11 12:58 |只看该作者
原帖由 bleem1998 于 2006-12-11 12:54 发表

'bleem1998'貌似不匹配'blem*'
看来不是说我

请你编辑一下你的发言,谢谢。

论坛徽章:
0
17 [报告]
发表于 2006-12-11 13:01 |只看该作者
好吧
看在你是技术大牛MM的份上

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
18 [报告]
发表于 2006-12-11 13:13 |只看该作者
原帖由 bleem1998 于 2006-12-11 13:01 发表
好吧
看在你是技术大牛MM的份上

感谢。

论坛徽章:
0
19 [报告]
发表于 2006-12-11 14:59 |只看该作者
近来看到google用的python写的爬虫,一台机器能维护300个线程,我这里5个线程就cpu100%了。为啥呢?笔记本是迅驰1.4的 server是志强2G +2M 的 都是100%

论坛徽章:
0
20 [报告]
发表于 2006-12-11 15:13 |只看该作者
在循环中加入些等待的处理,不然会一直占用的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP