由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 用gc的语言是不是就不能用RAII了?
相关主题
请问C++ exception后如何清理function stack上的内存资源?有人用C++调用过python/java的library吗
C++的exception大家常用吗?python, perl, C
python和java里面非memory资源怎么回收?python login网站
谁给说说python里这个with statement有什么好处?return value of a python function...
C++的很多library到底是趋于集中,还是各个公司独自开发,各立山头哪有关于python调用c的tutorial啊
Python的With語句嚇著我了问一个python调用awk得问题
Python 初级问题Django怎么学
问一下Python的情况python太慢了
相关话题的讨论汇总
话题: raii话题: 语言话题: gc话题: 对象话题: python
进入Programming版参与讨论
1 (共1页)
j****e
发帖数: 140
1
那些语言里非内存的资源是怎么处理分配和释放的?
a**a
发帖数: 416
2
如果用python的话,提供两种方法:
一个是with statement. 比如
with file('foo.bat') as fd:
# do whatever with fd
在退出with statement的时候可以自动释放资源。当然这个需要对象支持某些方法。
另外一个是在删除对象的时候调用对象的__del__方法。
Python的gc的算法之一是引用计数。所以当一个对象退出作用域且引用计数为零时
将调用该对象的__del__方法。
总而言之,语言可以通过支持某种协议来实现RAII. 如果不行的话,只能通过框架
来实现了。Python的做法应该就是语言级别的框架协议。

【在 j****e 的大作中提到】
: 那些语言里非内存的资源是怎么处理分配和释放的?
r****o
发帖数: 1950
3
sorry, what is gc?

【在 j****e 的大作中提到】
: 那些语言里非内存的资源是怎么处理分配和释放的?
1 (共1页)
进入Programming版参与讨论
相关主题
python太慢了C++的很多library到底是趋于集中,还是各个公司独自开发,各立山头
在线问一个qsub的问题。Python的With語句嚇著我了
Python 中如何调用C的 exe 程序Python 初级问题
也说语言问一下Python的情况
请问C++ exception后如何清理function stack上的内存资源?有人用C++调用过python/java的library吗
C++的exception大家常用吗?python, perl, C
python和java里面非memory资源怎么回收?python login网站
谁给说说python里这个with statement有什么好处?return value of a python function...
相关话题的讨论汇总
话题: raii话题: 语言话题: gc话题: 对象话题: python