内存
VT LI
VTL
展开
-
ZString-unity下的string低gc实现
我们在使用字符拼接的时候,一般都说需要用到string.format或者stringbuilder的append来实现。 首先string的拼接是会有gc的,从android端截取的数据可以看出来,上面的string.concat是字符串直接拼接下面的是string.format的小号会比上面的小一点,但还是有128b。然后我们来看看stringbuilder,如果stringbuilder.append一个int类型的话也是会产生一些gc的append的gc倒还好,但...原创 2020-07-08 19:53:19 · 2667 阅读 · 0 评论 -
一种对象池实现方案
对象池能让创建对象的cpu开销减少,也可以让内存控制再一定的数量上,是大量角色或物体创建移除的比较合适的解决方案。但很多用的是针对指定类型或场景下使用的对象池,很难做到通用。最近研究到,有这样一套对象池的解决方案。这套解决方案同样会分为获取Get,移除Release后回收。只是可以自定义我们需要获得的对象类型。代码如下://Game 中对象池ObjectPool//需要自定义Typ...原创 2020-01-07 11:00:37 · 191 阅读 · 0 评论 -
避免装拆箱内存消耗
在项目开发中,我们可能会在函数中用泛型来设置参数,这样的好处是可以方便的用一个函数解决传递参数的问题。比如我们有计时器,计时器传递参数让回调执行。就是因为灵活性,可能会导致我们产生很多不必要的装箱拆箱操作,而且如果在update执行的话,gc就会更严重。装拆箱首先解释下装箱拆箱:装箱将值类型转换成引用类型,拆箱将引用类型转换成值类型。值类型是在他自己的...原创 2020-01-07 09:57:52 · 915 阅读 · 0 评论