为什么R#警告Warning:Delegate subtraction has unpredictable result
Posted avi9111
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么R#警告Warning:Delegate subtraction has unpredictable result相关的知识,希望对你有一定的参考价值。
unity一般会写这样的代码
void OnDestroy()
{
_joystick.onJoystickDownEvent -= OnJoystickDownEvent;
_joystick.onJoystickMoveEvent -= OnJoystickMoveEvent;
_joystick.onJoystickUpEvent -= OnJoystickUpEvent;
}
添加了,就要释放,是不是?要不内存泄漏怎么解决,凡事都套个“内存泄漏”才能表现自己专业嘛
结果,这几句代码都是warning
分析可看下面参考链接
虽然分析说,可能warning不正确,不准确,理据不足
但事实是,写这样的代码的人,又理据充足了,连代码做了什么操作,实现了什么功能都不知道,就不需要妄论什么理据?
个人觉得,C#认为delegate是松耦合,足够,所以就不需要subtract delegate,作为“高级”语言,也不建议“一般”程序员,释放,增删查改,其实“删”是最危险的,C#建议内存多了也无所谓因为不会爆(因为有GC),但不能过分依赖GC,因为内存多了会导致GC释放频繁(当然就算你subtrace delegate,也不代表马上能释放GC);
所以你写不写上面的代码都无所谓
多”删“,还不是少”增“
一般的解决方法确实就是取消warning..
分析参考链接:
为什么R#警告Warning:Delegate subtraction has unpredictable result_18790970257的博客-CSDN博客
以上是关于为什么R#警告Warning:Delegate subtraction has unpredictable result的主要内容,如果未能解决你的问题,请参考以下文章
有啥方法可以避免在 s-s-r 中使用 React 出现“文本内容不匹配”警告?