xmlサイトマップファイル用に私自身のプロバイダを実装しようとしています。これで私は反射鏡を経由して、デフォルトのMicrosoft XmlSiteMapProviderを調査し始めていると私は私を混乱さスニペットを発見したので、ここではそれが行く:私が理解できないコードを切り捨てた質問
はSiteMapNode node = this._siteMapNode;
if (node != null)
{
return node;
}
XmlDocument configDocument = this.GetConfigDocument();
lock (base._lock)
{
**if (this._siteMapNode == null)**
{...// more code
さて、まず私たちは、ときにノードがnullでないかどうかをチェックし、小切手は私たちがもう一度それを見て通過しました。このIf文は冗長ではありませんか?それともロックと関係がありますか?