次のコードを検討してください。
public class AsyncRequestHandler : IHttpAsyncHandler
{
public void EndProcessRequest(IAsyncResult result)
{
if (result == null)
{
...
}
...
}
}
ReSharper は、(条件が常に false であることを示すことによって)result
あり得ないことを示唆しています。null
ただし、IAsyncResult
は参照型でnull
あるため、可能な値です。私は2つの可能性を思いつきました:
- ReSharper
result
が決してnull
. ReSharper を使用してIHttpAsyncHandler
ソース コードを見ると、 に関連付けられている属性が表示されませんEndProcessRequest
。 - ReSharper は、
IHttpAsyncHandler
保証IAsyncResult
が決してならないことを認識していますnull
。ただし、ドキュメントはどちらの方法でも手がかりを提供しません。
IAsyncResult
非同期タスクの進行状況を追跡できるため、null にならないのは妥当と思われます。誰かが洞察を提供してもらえますか?