ApplicationPoolCpu Class

Definition

Configures default values for CPU usage parameters and CPU actions that all application pools on a server use.

public ref class ApplicationPoolCpu sealed : Microsoft::Web::Administration::ConfigurationElement
public sealed class ApplicationPoolCpu : Microsoft.Web.Administration.ConfigurationElement
type ApplicationPoolCpu = class
    inherit ConfigurationElement
Public NotInheritable Class ApplicationPoolCpu
Inherits ConfigurationElement
Inheritance
ApplicationPoolCpu

Examples

The following example demonstrates several of the properties of the ApplicationPoolCpu class.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
using Microsoft.Web.Management;

namespace AdministrationSnippets
{
    class ApplicationPoolCpu
    {
        public void PropertyVals()
        {
            ServerManager manager = new ServerManager();
            string apppoolname;
            apppoolname = manager.Sites["Default Web Site"].ApplicationDefaults.ApplicationPoolName;
            ApplicationPool apppool = manager.ApplicationPools[apppoolname];
            bool apppool_isdirty = false;
            // Specify the action to be taken if the limits are exceeded.
            Console.WriteLine("If the limit is exceeded take the following action (ProcessorAction): " +
                apppool.Cpu.Action);
            // Set the ApplicationPoolCPU.Limit to a maximum of 2.5 milliseconds.
            if (apppool.Cpu.Limit > 25)
            {
                apppool.Cpu.Limit = 25;
                apppool_isdirty = true;
            }
            // Set the interval.Limit to a maximum of 10 minutes.
            TimeSpan maxinterval = new TimeSpan(0, 10, 0);
            if (apppool.Cpu.ResetInterval > maxinterval)
            {
                apppool.Cpu.ResetInterval = maxinterval;
                apppool_isdirty = true;
            }
            if (apppool_isdirty)
            {
                manager.CommitChanges();
                Console.WriteLine("Administration.config updated.");
            }
            Console.WriteLine("SmpProcessorAffinityMask: " +
                apppool.Cpu.SmpProcessorAffinityMask.ToString());
        }
    }
}

Remarks

This class represents application pool default settings in the IIS configuration system. The properties correspond directly to the attributes of the cpu element for the applicationPoolDefaults element for the applicationPools element.

Properties

Action

Gets or sets the actions that IIS takes when an application pool exceeds the CPU limit specified by the Limit property.

Attributes

Gets a configuration attribute collection that contains the list of attributes for this element.

(Inherited from ConfigurationElement)
ChildElements

Gets all the child elements of the current element.

(Inherited from ConfigurationElement)
ElementTagName (Inherited from ConfigurationElement)
IsLocallyStored

Gets a value indicating whether the configuration element is stored in a particular configuration file.

(Inherited from ConfigurationElement)
Item[String]

Gets or sets an attribute with the specified name.

(Inherited from ConfigurationElement)
Limit

Gets or sets the maximum percentage of CPU time that the worker processes in an application pool are allowed to consume over a period of time.

Methods

Gets a collection of methods for the configuration element.

(Inherited from ConfigurationElement)
RawAttributes (Inherited from ConfigurationElement)
ResetInterval

Gets or sets the reset period for CPU monitoring and throttling limits on an application pool.

Schema

Gets the schema for the current element.

(Inherited from ConfigurationElement)
SmpAffinitized

Gets or sets a value indicating whether CPU affinity is enabled for an application pool.

SmpProcessorAffinityMask

Gets or sets the CPU affinity for an application pool.

SmpProcessorAffinityMask2

Gets or sets the CPU affinity for an application pool (64-bit option).

Methods

Delete() (Inherited from ConfigurationElement)
GetAttribute(String)

Returns a ConfigurationAttribute object that represents the requested attribute.

(Inherited from ConfigurationElement)
GetAttributeValue(String)

Returns the value of the specified attribute.

(Inherited from ConfigurationElement)
GetChildElement(String)

Returns a child element that is under the current configuration element and has the specified name.

(Inherited from ConfigurationElement)
GetChildElement(String, Type)

Returns a child element that is under the current configuration element and has the specified name and type.

(Inherited from ConfigurationElement)
GetCollection()

Returns the default collection for the current configuration element.

(Inherited from ConfigurationElement)
GetCollection(String)

Returns all configuration elements that belong to the current configuration element.

(Inherited from ConfigurationElement)
GetCollection(String, Type)

Returns the configuration element that has the specified name and type and is under the current configuration element.

(Inherited from ConfigurationElement)
GetCollection(Type)

Returns the configuration element that has the specified type and is under the current configuration element.

(Inherited from ConfigurationElement)
GetMetadata(String)

Returns metadata values from the element schema.

(Inherited from ConfigurationElement)
SetAttributeValue(String, Object)

Sets the value of the specified attribute.

(Inherited from ConfigurationElement)
SetMetadata(String, Object)

Sets metadata values from the element schema.

(Inherited from ConfigurationElement)

Applies to

See also