--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
python年轻?别搞笑了。
python历史比java老。。。
1989年的圣诞节期间,吉多·范罗苏姆 开发出python。
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言,应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展,Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
刚刚学习python 的时候,看了不少文档,很多都有提到python的垃圾回收机制,当时以为从此和内存泄露说拜拜了,看来还是图样图僧破。
简单的办法是加个内存限制,超限重启。特别是对于周期性运行的python程序。象supervisor这样的工具有这样的插件,不行可以自已写,如使用psutils来检查内存使用情况。
2015-02-07 19:57 GMT+08:00 张加林 <caini...@gmail.com>:
刚刚学习python 的时候,看了不少文档,很多都有提到python的垃圾回收机制,当时以为从此和内存泄露说拜拜了,看来还是图样图僧破。前几天心血来潮,写了个扫描器,写完就想拿来试试,就从apnic下载了全球的ip分配表,写个脚本搞出中国的ip段,放到扫描器中扫描,然后睡觉去,准备早上起来看看结果。第二天起来,点亮屏幕的时候感觉特别慢,进去之后也感觉操作不对劲,立即top看了一下,扫描器占用了我60%的内存,当时心下一惊,wocao,遇到bug了。在网上摸了半天,终于找到源头:https://docs.python.org/2/reference/datamodel.html。在上面这个网页讲解__del__的地方谈到原来python也可能会出现内存泄露,第一种是出现在a->b , b->a的情况下,这个时候这两个对象的ref count永远不会变为0,python的垃圾回收器也就没法回收了。这个情况和操作系统的死锁似乎是一样的逻辑,都是由于在对资源(如果一个对象视为资源的话)的使用中出现了环,而对于环的检测非常困难,系统开销也非常大,所以即使是现在的操作系统也不做环的检测的,在出现死锁的情况的时候要么强制杀死一些进程,要么等到人工处理。我遇到的是第二种,(由于E文不溜,大概是这个意思吧)函数执行过程中,某个捕捉到的异常的对象的ref count,python不会自动把它变为0,而且函数的栈帧python也会保留着,用于traceback。我把我的扫描器拿去扫上亿的ip,每次对某个ip的扫描中出现异常的时候,执行这个函数的栈帧都会被保留下来,引发异常的对象也会被保留下来,这样经过一个晚上,我的内存就被慢慢吃掉了。这种情况的解决办法很简单,我对引发异常的情况不感兴趣,因为几乎都是timeout引发的,在上面那个网页给了很明确的解决办法:sys.exc_traceback=None即可,强制python扔掉traceback信息。第三种是在interactive模式下出现,我没看仔细,应该没有人能在interactive模式下慢慢玩到系统内存用完吧。。。that's all。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
不要在意这些细节,
谁年轻,谁老, 从来不是靠 commit log 决定的,
好比刘晓庆?
嗯嗯嗯, 合适与否,一向的成功后的判定,
在此之前, 完全看我们自个儿相信什么了.
2015-02-07 22:31 GMT+08:00 Tian <ask...@gmail.com>:
> java比python还年轻。。。
>
> 2015-02-07 21:48 GMT+08:00 猪猪 <cspi...@qq.com>:
>>
>>
>> 首先我并不是贬低Python,我下到机器码,上到erlang,我都用。相比之下,我觉得Python非常优秀。我从前年开始让运维部门用Python,取得很好效果。
>>
>>
>> 但是,我们也应该正视Python的缺点。Python太年轻,用户不多,很多方面的需求所对应的成熟解决方案也较少,因此,稳定性必然不如Java之流。所以我才建议,小玩意用Python写,很不错,但ServerAPP,还是不要给自己挖坑了。我知道目前有很多看起来不小的项目都用Python,但他们花了多少时间填坑,你们有了解过吗?
>>
>> 最后,还是那句话,用合适的工具,去做合适的事情。不要让狂热变成偏见。也许你是Python的铁粉,但客观才是你成长的动力。
>>
>> --
>> 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
>> 规则: http://code.google.com/p/cpyug/wiki/PythonCn
>> 详情: http://code.google.com/p/cpyug/wiki/CpyUg
>> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>> ---
>> 您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
>> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
>> 要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
>> 要查看更多选项,请访问https://groups.google.com/d/optout。
>
>
> --
> 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
> 规则: http://code.google.com/p/cpyug/wiki/PythonCn
> 详情: http://code.google.com/p/cpyug/wiki/CpyUg
> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
> ---
> 您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
> 要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
> 要查看更多选项,请访问https://groups.google.com/d/optout。
--
Life's Pathetic, Let's Pythonic! 人生苦短, Python是岸!
俺: http://zoomquiet.io
授: http://creativecommons.org/licenses/by-sa/2.5/cn/
怒: 冗余不做,日子甭过!备份不做,十恶不赦!
KM keep growing environment culture which promoting organization be learnning!
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
Python不成熟,做做小玩意还行,但7*24的ServerAPP万万不可用Python。--
就内存管理这块,说Java没坑,你让那些分析研究GC机制的架构师脸放哪去?
>>> >> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
>>> >> 要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
>>> >> 要查看更多选项,请访问https://groups.google.com/d/optout。
>>> >
>>> >
>>> > --
>>> > 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
>>> > 规则: http://code.google.com/p/cpyug/wiki/PythonCn
>>> > 详情: http://code.google.com/p/cpyug/wiki/CpyUg
>>> > 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>>> > ---
>>> > 您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
>>> > 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
>>> > 要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
>>> > 要查看更多选项,请访问https://groups.google.com/d/optout。
>>>
>>>
>>>
>>> --
>>> Life's Pathetic, Let's Pythonic! 人生苦短, Python是岸!
>>> 俺: http://zoomquiet.io
>>> 授: http://creativecommons.org/licenses/by-sa/2.5/cn/
>>> 怒: 冗余不做,日子甭过!备份不做,十恶不赦!
>>> KM keep growing environment culture which promoting organization be
>>> learnning!
>>>
>>> --
>>> 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
>>> 规则: http://code.google.com/p/cpyug/wiki/PythonCn
>>> 详情: http://code.google.com/p/cpyug/wiki/CpyUg
>>> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>>> ---
>>> 您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
>>> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
>>> 要向此群组发帖,请发送电子邮件至 pyth...@googlegroups.com。
>>> 要查看更多选项,请访问 https://groups.google.com/d/optout。
>>>
>> --
>> 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
>> 规则: http://code.google.com/p/cpyug/wiki/PythonCn
>> 详情: http://code.google.com/p/cpyug/wiki/CpyUg
>> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
>> ---
>> 您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
>> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
>> 要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
>> 要查看更多选项,请访问https://groups.google.com/d/optout。
>>
>
> --
> 邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
> 规则: http://code.google.com/p/cpyug/wiki/PythonCn
> 详情: http://code.google.com/p/cpyug/wiki/CpyUg
> 严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
> ---
> 您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
> 要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
> 要向此群组发帖,请发送电子邮件至 pyth...@googlegroups.com。
> 要查看更多选项,请访问 https://groups.google.com/d/optout。
>
--
BR,
/Catstyle_Lee
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
__del__我写的代码从来没用过。
--
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
--Cheers,
Shaun
可以自己手动分配内存的内存碎片能解决。比如C家族。。。。
| Appeared in | 1991; 24 years ago |
|---|
| Appeared in | 1995; 20 years ago[1] |
|---|
--
在 2015年2月9日 上午10:12,Chunlin Zhang <zhangc...@gmail.com> 写道:
>
>
> 2015-02-09 9:48 GMT+08:00 风间星魂 <fengjia...@gmail.com>:
>>
>> 可以自己手动分配内存的内存碎片能解决。比如C家族。。。。
>
> C也是一样阿,如果常驻内存跑久了一样有内存碎片阿, 什么叫做"自己手动分配内存的内存碎片"?
你可以一次性申请一段大内存,然后自己维护一个内存池
--
Have a nice day!
Zhenbo Li
---
。。。。先google一下“内存碎片”和malloc函数的实现吧。。
---
简单的办法是加个内存限制,超限重启。特别是对于周期性运行的python程序。象supervisor这样的工具有这样的插件,不行可以自已写,如使用psutils来检查内存使用情况。
2015-02-07 19:57 GMT+08:00 张加林 <caini...@gmail.com>:
首先我并不是贬低Python,我下到机器码,上到erlang,我都用。相比之下,我觉得Python非常优秀。我从前年开始让运维部门用Python,取得很好效果。但是,我们也应该正视Python的缺点。Python太年轻,用户不多,很多方面的需求所对应的成熟解决方案也较少,因此,稳定性必然不如Java之流。所以我才建议,小玩意用Python写,很不错,但ServerAPP,还是不要给自己挖坑了。我知道目前有很多看起来不小的项目都用Python,但他们花了多少时间填坑,你们有了解过吗?最后,还是那句话,用合适的工具,去做合适的事情。不要让狂热变成偏见。也许你是Python的铁粉,但客观才是你成长的动力。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
可重入还不会对最终结果造成影响的,加内存限制,超限重启是个相当简单便捷的方法,不过如果程序保存退出点的进度相当麻烦的话还是很蛋疼的。最近在写一个爬虫就相当蛋疼,一直没有条件可以让程序7x24小时的跑,就做一个进度保存,下次继续,手头上一直事情又多,到现在都还没去解决。
在 2015年2月7日星期六 UTC+8下午10:01:21,limodou写道:
简单的办法是加个内存限制,超限重启。特别是对于周期性运行的python程序。象supervisor这样的工具有这样的插件,不行可以自已写,如使用psutils来检查内存使用情况。
2015-02-07 19:57 GMT+08:00 张加林 <caini...@gmail.com>:
刚刚学习python 的时候,看了不少文档,很多都有提到python的垃圾回收机制,当时以为从此和内存泄露说拜拜了,看来还是图样图僧破。前几天心血来潮,写了个扫描器,写完就想拿来试试,就从apnic下载了全球的ip分配表,写个脚本搞出中国的ip段,放到扫描器中扫描,然后睡觉去,准备早上起来看看结果。第二天起来,点亮屏幕的时候感觉特别慢,进去之后也感觉操作不对劲,立即top看了一下,扫描器占用了我60%的内存,当时心下一惊,wocao,遇到bug了。在网上摸了半天,终于找到源头:https://docs.python.org/2/reference/datamodel.html。在上面这个网页讲解__del__的地方谈到原来python也可能会出现内存泄露,第一种是出现在a->b , b->a的情况下,这个时候这两个对象的ref count永远不会变为0,python的垃圾回收器也就没法回收了。这个情况和操作系统的死锁似乎是一样的逻辑,都是由于在对资源(如果一个对象视为资源的话)的使用中出现了环,而对于环的检测非常困难,系统开销也非常大,所以即使是现在的操作系统也不做环的检测的,在出现死锁的情况的时候要么强制杀死一些进程,要么等到人工处理。我遇到的是第二种,(由于E文不溜,大概是这个意思吧)函数执行过程中,某个捕捉到的异常的对象的ref count,python不会自动把它变为0,而且函数的栈帧python也会保留着,用于traceback。我把我的扫描器拿去扫上亿的ip,每次对某个ip的扫描中出现异常的时候,执行这个函数的栈帧都会被保留下来,引发异常的对象也会被保留下来,这样经过一个晚上,我的内存就被慢慢吃掉了。这种情况的解决办法很简单,我对引发异常的情况不感兴趣,因为几乎都是timeout引发的,在上面那个网页给了很明确的解决办法:sys.exc_traceback=None即可,强制python扔掉traceback信息。第三种是在interactive模式下出现,我没看仔细,应该没有人能在interactive模式下慢慢玩到系统内存用完吧。。。that's all。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
--I like python!
UliPad <<The Python Editor>>: http://code.google.com/p/ulipad/
UliWeb <<simple web framework>>: https://github.com/limodou/uliweb
My Blog: http://my.oschina.net/limodou
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了 Google 网上论坛上“python-cn(华蟒用户组,CPyUG 邮件列表)”群组中的主题。
要退订此主题,请访问https://groups.google.com/d/topic/python-cn/IfWg85-qbig/unsubscribe。
要退订此群组及其所有主题,请发送电子邮件到python-cn+...@googlegroups.com。
内存泄漏在: list(netaddr.IPNetwork), list 之后生成大量的IPAddress, IPNetwork 本身实现了 next, 直接迭代使用, 去除list后, 内存增长缓慢, 跑到3500行时,维持在400M.使用线程池(multiprocessing.dummy) 内存稳定在 200M扫描全部公网ip干吗. 不是是想抓电信的光猫? http://ipcn.chacuo.net/view/i_CHINANET 这样至少可以缩小50%工作量
--要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
要发帖到此群组,请发送电子邮件至python-cn@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
时光飞逝,但时光正好。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了 Google 网上论坛的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
gd aos是啥?
Python的垃圾回收缺省配置就能回收环。在Python 3.4之前如果定义了__del__的话,环回收可能会出问题:
Circular references which are garbage are detected when the option cycle detector is enabled (it’s on by default), but can only be cleaned up if there are no Python-level __del__() methods involved.
不过这个问题已经在Python 3.4中解决了。
https://docs.python.org/3.4/whatsnew/3.4.html#pep-442-safe-object-finalization
2015年2月7日土曜日 20時57分55秒 UTC+9 张加林:
在 2015年2月9日 上午10:12,Chunlin Zhang <zhangc...@gmail.com> 写道:
>
>
> 2015-02-09 9:48 GMT+08:00 风间星魂 <fengjia...@gmail.com>:
>>
>> 可以自己手动分配内存的内存碎片能解决。比如C家族。。。。
>
> C也是一样阿,如果常驻内存跑久了一样有内存碎片阿, 什么叫做"自己手动分配内存的内存碎片"?
你可以一次性申请一段大内存,然后自己维护一个内存池
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
Python不成熟,做做小玩意还行,但7*24的ServerAPP万万不可用Python。
首先我并不是贬低Python,我下到机器码,上到erlang,我都用。相比之下,我觉得Python非常优秀。我从前年开始让运维部门用Python,取得很好效果。但是,我们也应该正视Python的缺点。Python太年轻,用户不多,很多方面的需求所对应的成熟解决方案也较少,因此,稳定性必然不如Java之流。所以我才建议,小玩意用Python写,很不错,但ServerAPP,还是不要给自己挖坑了。我知道目前有很多看起来不小的项目都用Python,但他们花了多少时间填坑,你们有了解过吗?最后,还是那句话,用合适的工具,去做合适的事情。不要让狂热变成偏见。也许你是Python的铁粉,但客观才是你成长的动力。
--
可重入还不会对最终结果造成影响的,加内存限制,超限重启是个相当简单便捷的方法,不过如果程序保存退出点的进度相当麻烦的话还是很蛋疼的。最近在写一个爬虫就相当蛋疼,一直没有条件可以让程序7x24小时的跑,就做一个进度保存,下次继续,手头上一直事情又多,到现在都还没去解决。
在 2015年2月7日星期六 UTC+8下午10:01:21,limodou写道:
简单的办法是加个内存限制,超限重启。特别是对于周期性运行的python程序。象supervisor这样的工具有这样的插件,不行可以自已写,如使用psutils来检查内存使用情况。
2015-02-07 19:57 GMT+08:00 张加林 <caini...@gmail.com>:
刚刚学习python 的时候,看了不少文档,很多都有提到python的垃圾回收机制,当时以为从此和内存泄露说拜拜了,看来还是图样图僧破。前几天心血来潮,写了个扫描器,写完就想拿来试试,就从apnic下载了全球的ip分配表,写个脚本搞出中国的ip段,放到扫描器中扫描,然后睡觉去,准备早上起来看看结果。第二天起来,点亮屏幕的时候感觉特别慢,进去之后也感觉操作不对劲,立即top看了一下,扫描器占用了我60%的内存,当时心下一惊,wocao,遇到bug了。在网上摸了半天,终于找到源头:https://docs.python.org/2/reference/datamodel.html。在上面这个网页讲解__del__的地方谈到原来python也可能会出现内存泄露,第一种是出现在a->b , b->a的情况下,这个时候这两个对象的ref count永远不会变为0,python的垃圾回收器也就没法回收了。这个情况和操作系统的死锁似乎是一样的逻辑,都是由于在对资源(如果一个对象视为资源的话)的使用中出现了环,而对于环的检测非常困难,系统开销也非常大,所以即使是现在的操作系统也不做环的检测的,在出现死锁的情况的时候要么强制杀死一些进程,要么等到人工处理。我遇到的是第二种,(由于E文不溜,大概是这个意思吧)函数执行过程中,某个捕捉到的异常的对象的ref count,python不会自动把它变为0,而且函数的栈帧python也会保留着,用于traceback。我把我的扫描器拿去扫上亿的ip,每次对某个ip的扫描中出现异常的时候,执行这个函数的栈帧都会被保留下来,引发异常的对象也会被保留下来,这样经过一个晚上,我的内存就被慢慢吃掉了。这种情况的解决办法很简单,我对引发异常的情况不感兴趣,因为几乎都是timeout引发的,在上面那个网页给了很明确的解决办法:sys.exc_traceback=None即可,强制python扔掉traceback信息。第三种是在interactive模式下出现,我没看仔细,应该没有人能在interactive模式下慢慢玩到系统内存用完吧。。。that's all。
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+unsubscribe@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。
--I like python!
UliPad <<The Python Editor>>: http://code.google.com/p/ulipad/
UliWeb <<simple web framework>>: https://github.com/limodou/uliweb
My Blog: http://my.oschina.net/limodou
--
--
邮件来自: `CPyUG`华蟒用户组(中文Python技术邮件列表)
规则: http://code.google.com/p/cpyug/wiki/PythonCn
详情: http://code.google.com/p/cpyug/wiki/CpyUg
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
---
您收到此邮件是因为您订阅了Google网上论坛上的“python-cn(华蟒用户组,CPyUG 邮件列表)”群组。
要退订此群组并停止接收此群组的电子邮件,请发送电子邮件到python-cn+...@googlegroups.com。
要发帖到此群组,请发送电子邮件至pyth...@googlegroups.com。
要查看更多选项,请访问https://groups.google.com/d/optout。