在这样的简单表达式评估中是否有避免内存泄漏的解决方案?
inter.SetVariable("tick", tick++);
if (inter.Eval<bool>("(tick%2)==1"))
{
odd++;
if ((odd % 100) == 0)
System.GC.Collect();
}
else
even++;
我在具有 Mono(5.0.1.1)的 Linux 机器上的 WinForm 应用程序中定期运行此代码,并且内存使用量不断增加。在 Windows 上测试,Process.WorkingSet64 的增长速度低于 Linux。GC.GetTotalMemory 始终是稳定的。