当前位置:  开发笔记 > 编程语言 > 正文

是否有编程语言的例子支持除内存之外的资源自动管理?

如何解决《是否有编程语言的例子支持除内存之外的资源自动管理?》经验,为你挑选了1个好方法。

自动内存管理的想法已经获得了新的编程语言的大力支持.我有兴趣是否存在自动管理其他资源(如文件,网络套接字等)的概念?



1> Pete Kirkham..:

对于单线程应用程序,可用于代码块范围的资源模式(最后清理)存在于多种语言中.例如在C++中使用RAII,或在Common Lisp中使用-open -file(在新的受Lisp影响的语言中等效 - 在Dylan,C#,Python和Ruby中也可以将块传递给文件对象).

我不知道有什么更适合现代垃圾收集闪耀的多线程环境,而不是在C++中结合RAII和引用计数或auto_ptr,这并不总是一个微不足道的组合.

资源自动管理和自动内存管理之间的一个重要区别是,内存管理通常可以提供非确定性,并且只在流程需要时回收,而资源通常限制在操作系统级别,因此应尽快回收因为它不再使用.因此选择智能指针而不是垃圾收集作为管理实现.有一个中间级别的资源--GDI对象,临时文件句柄,线程 - 应用程序想要限制它使用的总量,但不关心将它们释放到其他进程 - 这些通常是合并的,这会让你有所帮助走向自动化管理.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有