ProcessModelSection.MaxIOThreads 属性

定义

获取或设置一个值,该值指示 CLR 线程池中每个 CPU 的最大 I/O 线程数。

public:
 property int MaxIOThreads { int get(); void set(int value); };
[System.Configuration.ConfigurationProperty("maxIoThreads", DefaultValue=20)]
[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]
public int MaxIOThreads { get; set; }
[<System.Configuration.ConfigurationProperty("maxIoThreads", DefaultValue=20)>]
[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]
member this.MaxIOThreads : int with get, set
Public Property MaxIOThreads As Integer

属性值

Int32

最大线程数。 默认值为 20。

属性

示例

下面的代码示例演示如何访问 MaxIOThreads 属性。


 // Get the current MaxIOThreads property value.
int maxIOThreads = 
    processModelSection.MaxIOThreads;

 // Set the MaxIOThreads property to 64.
 processModelSection.MaxIOThreads = 64;
' Get the current MaxIOThreads property value.
   Dim maxIOThreads As Integer = _
   processModelSection.MaxIOThreads

' Set the MaxIOThreads property to 64.
processModelSection.MaxIOThreads = 64

注解

该值 MaxIOThreads 必须等于或大于 MinFreeThreads 配置部分中的设置 httpRuntime

可以通过分别使用 MaxWorkerThreads 属性和属性设置工作线程数和 MaxIOThreads I/O 线程来控制 CPU 利用率。

两种类型的线程之间的区别在于后者绑定到 I/O 对象,例如流或管道,而前者是传统的不受限制的线程。 对于 Internet Information Services (IIS) 版本 6.0 及更高版本,ASP.NET 处理工作线程上的请求。 这是因为 ASP.NET 在 IIS 中集成。

这些线程是从属于应用程序的进程范围的 CLR 线程池获取的。

备注

通常,允许的线程的默认值足以保持 CPU 使用率高。 如果出于某种原因,应用程序速度缓慢,可能正在等待外部资源,则可以尝试将线程数增加到小于 100 的值。

适用于

另请参阅