This metabase property specifies the percentage of CPU time, in 1/1000ths of a percent, that all isolated processes on the Web server may occupy during a given process accounting interval (specified by CpuResetInterval). If the isolated processes attempt to occupy more CPU time than specified in CpuLimitProcStop, IIS halts all isolated processes on that site affected by Process Throttling. Processes terminated due to limit overruns will not be allowed to restart until the next CPU interval reset. Any limit overrun will be recorded in the Windows Event Log, and, if process accounting is enabled, in the IIS log as well.
If CpuLimitProcStop is set to 0, or a value greater than 100,000 (100 percent), IIS will not stop the process. However, one of the other process throttling properties, such as CpuLimitLogEvent, CpuLimitPriority, or CpuLimitPause, could generate a response from IIS if a CPU limit is exceeded.
Note Because process accounting in IIS uses Windows Job Objects to monitor CPU times for an entire process, process accounting will log and throttle only applications that are isolated in a separate process from IIS.
Process throttling and process accounting are independently controlled by several other metabase properties. In order to enable process accounting you must set CpuEnableLogging (which is a member of CpuLoggingMask) to TRUE, and set at least one other CpuLoggingMask property to TRUE. It is also necessary to set at least one member flag of the CpuLoggingOptions, set CpuLoggingInterval to a nonzero value, and set either CpuAppEnabled or CpuCgiEnabled, as appropriate, to TRUE.
To properly activate process throttling, CpuLimitsEnabled must be set to TRUE, and at least one of the following properties should be set to TRUE: CpuLimitLogEvent, CpuLimitPriority, CpuLimitProcStop, or CpuLimitPause.
Important Applications that do not have process throttling enabled do not contribute to the total CPU time, for the purposes of calculating CPU limit overruns.
Data type | Long |
Default value | 0 (unlimited) |
Inheritance | Inheritable |
This property is accessible at the following locations:
Metabase Path | Key Type |
/LM/W3SVC | IIsWebService |
/LM/W3SVC/N | IIsWebServer |
The following table lists additional information required only for code that uses the IIS Admin Base Object.
Metabase identifier | MD_CPU_LIMIT_PROCSTOP |
User type | IIS_MD_UT_SERVER |