zoukankan      html  css  js  c++  java
  • 内存管理

    c#的内存管理

    1、不要留下打开的资源!明确关闭所有连接和清理所有非托管资源。一个通用的规则在using块内使用非托管资源。

    2、不要过度的使用引用。当我们的对象活着,那么所有相关的引用对象将不会被回收。当我们操作了引用类的一些属性后,我们需要明确的将引用变量设置为null。以便垃圾回收器回收这些对象。

    3、使用终结器(finalizer)使工作更容易,但是是在必须的情况下。终结器(finalizer)需要花费垃圾回收器的昂贵的代价,所以必须在必要的时候使用它。一个更好的方案是使用IDisposible 接口来取代终结器(finalizer)。这样做会使垃圾回收器工作的更有效率。

    4、将对象和它们的孩子保持在一起。这样使得垃圾回收器更容易去产生大块内存而不用去收集托管堆上的每一个零散的内存。因此当我们声明一个对象由多个其他对象组合成的时候,我们应该显示的将它们安排的紧密一些。

    OC内存管理

    谁创建谁释放。使用copy,new,alloc创建对象,引用计数器retain会加一,需要使用release或autorelease进行释放。

    JAVA内存管理

    JAVA里面有垃圾回收机制,不需要程序员考虑内存管理。

  • 相关阅读:
    1.1 java变量及数据类型
    3. 软件测试的类型
    2.3 软件测试模型之 敏捷测试
    2.2 软件测试的手段
    2.1 软件测试的阶段
    1.1 软件测试基础概念
    浅谈内联元素inline
    微信内置浏览器清除缓存的方法
    我的package.json清单
    我的gulp.js清单
  • 原文地址:https://www.cnblogs.com/layios/p/5229857.html
Copyright © 2011-2022 走看看