event EventHandler被分配给空委托

Jac*_*cik 1 c#

我正在阅读一些代码,发现这一行:

public event EventHandler Lock = delegate { }

它有什么作用?
为什么有人会使用这样的代码?

H.B*_*.B. 6

通常你这样做:

var handler = Lock;
if (handler != null)
    handler(this, args);
Run Code Online (Sandbox Code Playgroud)

使用空委托它永远不会为空,所以你可以提高Lock(this, args);.