使用以下MOSS 2007代码可能导致内存泄漏?

时间:2012-04-26 06:31:37

标签: sharepoint moss

以下代码是否会泄漏内存?如果有,有关优化的建议吗?

SPWeb web = (SPWeb)properties.Feature.Parent; // comes from the event receiver
//... lots of other code

// the below is the focal point.
foreach (SPWeb childWeb in web.Webs) 
{
    try
    {
        // lots of heavy processing with the childWebs
    }
    finally
    {
        if (childWeb != null)
        {
            childWeb.Dispose();
        }
    }
}

2 个答案:

答案 0 :(得分:3)

您发布的代码应该没问题。但是,根据您在try-statement中对childWeb执行的操作,可能会导致内存泄漏。你可以发布整个代码吗?你怀疑内存泄漏吗?

答案 1 :(得分:1)

根据Disposing Objects,您的代码与SPWeb.Webs的良好编码实践相匹配。

正如该页面所述,我建议下载并使用SPDisposeCheck作为正确代码的验证和潜在内存泄漏的识别。