unity中的事件c#中单例和事件能一起使用吗

我有一个实现两个接口的类,我想對类的方法应用拦截.

我正在遵循的建议,但我对结果感到惊讶.简而言之,似乎我的CallHandler被调用了两次.我有一个最简单的例子是:

我原本希望只调用┅次Log.我可以通过让LogCallHandler检测它是否从另一个LogCallHandler调用来实现这一点,但这看起来不太优雅.

最初我想将拦截行为应用于C而不是分别应用于I1和I2,但这需要C继承MarshalByRefObject,这是我不愿意强加的约束.

问题是您正在将透明代理应用于每个接口.相反,如果将它应用于具体类,则只能获得一个代理.此外,除非您希望共享實例,否则不需要将其设为单例.

我在测试控制台项目中运行了此配置并获得了所需的结果.感谢您提供隔离问题的工作代码段!

继承自Mono的单例写法:

托管被视为對对象或者方法的一个引用

定义一个托管,以及被触发时的响应

我要回帖

更多关于 unity中的事件 的文章

 

随机推荐