gpt4 book ai didi

c# - 向事件添加简单的处理程序是否会导致大量开销?

转载 作者:太空宇宙 更新时间:2023-11-03 11:21:55 25 4
gpt4 key购买 nike

来自这个question的回答内容我学会了一个新把戏;向事件添加一个简单的处理程序,以避免在引发事件时进行空值检查。

public static event EventHandler SomeEvent = delegate {};

并在不进行空检查的情况下调用它:

SomeEvent(null,EventArgs.Empty);

这会增加大量开销吗?如果不是,为什么不内置这样的东西?

最佳答案

Does this add significant overhead? If not, why isn't something like this built in?

它不会增加显着开销 - 只是在引发事件时调用委托(delegate)。

至于为什么它不是内置的 - 有几个缺点:

  1. 这不一定是防弹的——你仍然可以clear the handler list afterwards ,在这种情况下,您仍然需要进行适当的检查。
  2. 这确实会增加开销 - 虽然开销很小,但在特定情况下可能会产生问题。

关于c# - 向事件添加简单的处理程序是否会导致大量开销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10658671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com