zoukankan      html  css  js  c++  java
  • Unity GC优化原理及实践-4实践

    1.GC原理

     

    (1) 发生GC时,所有线程都必须停止工作。GC不合理的一种表现。

      如打开界面初始化界面逻辑的GC、一键添加道具触发红点重新计算的GC。  

    (2)GC回收的是堆内存

     

    变量定义在for循环外,节约了每次分配栈内存的时间,性能上略优于定义在for循环内。

    变量定义在for循环内更符合变量作用域最小原则。

    (3) 减少内存碎片。复用堆上的类型如List<T>

     

    2.影响GC性能的主要因素

     

    3.可变参数

     

    4.Condition特性

     

      

    5.装箱和拆箱

    6.避免使用Linq

      排序本身会产生GC,以及最后的.ToList()操作

    7.使用对象池

      避免频繁的创建和释放带来的GC,也是减少碎片

    8.字符串

    9.匿名方法

    匿名函数gc分析:https://www.cnblogs.com/sifenkesi/p/9762183.html

    常用于加载资源的回调,传参回调函数

    10.协程

     

     

     

     

     

    12.Unity所有返回是数组的API都会有GC Alloc

     

     

     

  • 相关阅读:
    生成唯一流水码
    搜索类
    数字转中文
    字符串转数组工具类
    类转换
    P1112 区间连续段
    P1113 同颜色询问
    Turtlebot3 机器学习
    Turtlebot2进阶教程
    turtlebot A2
  • 原文地址:https://www.cnblogs.com/DonYao/p/15255235.html
Copyright © 2011-2022 走看看