変なふうに私は簡単な質問のようですが、ドキュメントやウェブ上で答えを見つけることができていない登録解除します。C#のイベント、事前登録なし
は想像私が交流#イベントに登録条件ブロック:この例では
void Execute()
{
if(loader.AlreadyCompleted)
{
DoSomething();
}
else
{
loader.Completed += DoSomething;
}
}
、ローダはCompleted
イベントをトリガします。既に発生している場合はAlreadyCompleted
が真となり、それ以外の場合はfalseとなり、DoSomething
を実行する前に待機するためにCompleted
イベントに登録します。
ここで、いつでも起動できるAbort関数があるとします。 Abort関数では、Completed
イベントから登録を解除する必要があります。ローダーが起動時に準備ができていたし、私たちはラインloader.Completed += DoSomething;
を実行したことがない場合はどうなりますか
void Abort()
{
loader.Completed -= DoSomething;
}
? 登録されていないイベントの登録を解除できますか?登録されているか確認する方法はありますか?この場合のベストプラクティスは何ですか?
あなたはそれを試しましたか?この質問は私にはあまりにも理論的すぎて、広すぎます。 –
私は尋ねるときにそれを試していなかった。私はStackOverflowで答えを見つけられなかったので、私はこの情報を探しているのは確かに唯一の人ではないので、私は尋ねることにしました。私はそれが重複していることを見ているだけです。それは、「購読する」の代わりに「登録する」という用語を使用して検索したためです。私の間違いです。 –
[mcve]は何かをお読みください。 –