gpt4 book ai didi

c#事件,取消注册而不事先注册

转载 作者:行者123 更新时间:2023-12-02 17:16:46 26 4
gpt4 key购买 nike

<分区>

奇怪的是,我无法在文档或网络上找到答案,尽管这似乎是一个简单的问题:

假设我在条件 block 中注册了一个 C# 事件:

void Execute()
{
if(loader.AlreadyCompleted)
{
DoSomething();
}
else
{
loader.Completed += DoSomething;
}
}

在此示例中,加载器将触发 Completed 事件。如果它已经发生 AlreadyCompleted 将为真,否则为假,我想注册到 Completed 事件以便在执行 DoSomething 之前等待.

现在假设我有一个可以随时触发的 Abort 函数。在 Abort 函数中,我需要从 Completed 事件中注销。

void Abort()
{
loader.Completed -= DoSomething;
}

如果加载程序在启动时就绪,而我们从未执行 loader.Completed += DoSomething; 行,会发生什么情况? 我们可以注销尚未注册的事件吗?有没有办法检查我们是否已注册?在这种情况下,最佳做法是什么?

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