我正在使用XNA为xbox360开发游戏。在Xbox上,与PC上的垃圾收集器相比,垃圾收集器表现非常糟糕,因此将产生的垃圾保持最少对于游戏的顺畅运行非常重要。
我记得曾经读过一篇文章,称调用委托会创建垃圾,但是现在我无论如何也找不到任何有关委托创建垃圾的参考资料。我是自己编造的吗?还是委托真的很麻烦?
如果委托很麻烦,那么建议一个解决方法可以获得额外的奖励分数。
我记得曾经读过一篇文章,称调用委托会创建垃圾,但是现在我无论如何也找不到任何有关委托创建垃圾的参考资料。我是自己编造的吗?还是委托真的很麻烦?
如果委托很麻烦,那么建议一个解决方法可以获得额外的奖励分数。
public delegate T GetValue<T>(T value, T[] args);
public static T Transaction<T>(GetValue<T> calculate, ref T value, params T[] args) where T : class
{
T newValue = calculate(value, args);
return foo(newValue);
}
目前我的代码看起来有点像这样,我能想到的唯一解决委托问题的方法是传入一个继承了接口IValueCalculator的类,然后我可以在该接口上调用方法,但这并不是很简洁!