IIS6.0以上版本,查看IIS的属性
http://msdn.microsoft.com/en-us/library/ms525539.aspx
<IIsApplicationPool Location ="/LM/W3SVC/AppPools/DefaultAppPool"
AppPoolAutoStart="TRUE"
PeriodicRestartMemory="2000" //最大虚拟内存MB
PeriodicRestartPrivateMemory="1000" //最大占用内存MB
PeriodicRestartRequests="1000" //请求数
PeriodicRestartSchedule="07:50 //自动回收时间
12:00
20:00"
>
</IIsApplicationPool>
代码
protected void StartStopRecycleApp(string method)
{
string AppPoolName = "DefaultAppPool";
try
{
DirectoryEntry appPool = new DirectoryEntry("IIS://localhost/W3SVC/AppPools");
DirectoryEntry findPool = appPool.Children.Find(AppPoolName, "IIsApplicationPool");
findPool.Properties["PeriodicRestartMemory"].Value = (object)512000;//设置最大虚拟内存占有
findPool.Properties["PeriodicRestartPrivateMemory"].Value = (object)200000;//设置最大物理内存占有
string[] strPamer = { "07:50", "12:00", "20:00" };
findPool.Properties["PeriodicRestartSchedule"].Value = (object)strPamer;//设置自动回收时间
findPool.CommitChanges();
appPool.CommitChanges();
appPool.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
//lbMsg.Text = string.Format("应用程序池{0}{2}失败:{1}", AppPoolName, ex.Message, method);
}
}