-
Notifications
You must be signed in to change notification settings - Fork 1.6k
/
ProcessModelSection.xml
1441 lines (1256 loc) · 91 KB
/
ProcessModelSection.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<Type Name="ProcessModelSection" FullName="System.Web.Configuration.ProcessModelSection">
<TypeSignature Language="C#" Value="public sealed class ProcessModelSection : System.Configuration.ConfigurationSection" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed ProcessModelSection extends System.Configuration.ConfigurationSection" />
<TypeSignature Language="DocId" Value="T:System.Web.Configuration.ProcessModelSection" />
<TypeSignature Language="VB.NET" Value="Public NotInheritable Class ProcessModelSection
Inherits ConfigurationSection" />
<TypeSignature Language="F#" Value="type ProcessModelSection = class
 inherit ConfigurationSection" />
<TypeSignature Language="C++ CLI" Value="public ref class ProcessModelSection sealed : System::Configuration::ConfigurationSection" />
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Configuration.ConfigurationSection</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Configures the ASP.NET process model settings on an Internet Information Services (IIS) Web server. This class cannot be inherited.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.Configuration.ProcessModelSection> class provides a way to programmatically access and modify the `processModel` section of a configuration file.
The <xref:System.Web.Configuration.ProcessModelSection> class controls various aspects of the ASP.NET worker process, including its lifetime, the number of instances created at a time, what security identity it runs under, and the size of the CLR thread pool to service requests.
When ASP.NET is running under IIS 6 in native mode, ASP.NET uses the IIS 6 process model and ignores most settings in this section. Use the IIS administration user interface (UI) to configure those properties. ASP.NET still uses the following properties, which can be configured through the configuration file: <xref:System.Web.Configuration.ProcessModelSection.RequestQueueLimit%2A>, <xref:System.Web.Configuration.ProcessModelSection.ResponseDeadlockInterval%2A>, <xref:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads%2A>, <xref:System.Web.Configuration.ProcessModelSection.MaxIOThreads%2A>, <xref:System.Web.Configuration.ProcessModelSection.MinWorkerThreads%2A>, and <xref:System.Web.Configuration.ProcessModelSection.MinWorkerThreads%2A>.
The `processModel` section cannot be encrypted using the protected-configuration feature or tools because it is consumed by the ASP.NET ISAPI extension.
## Examples
This example demonstrates how to specify values declaratively for several attributes of the `processModel` section, which can also be accessed as members of the <xref:System.Web.Configuration.ProcessModelSection> class.
The following configuration file example shows how to specify values declaratively for the `processModel` section.
```
<processModel
enable="True" timeout="Infinite"
idleTimeout="Infinite"
shutdownTimeout="00:00:05" requestLimit="Infinite"
requestQueueLimit="5000" restartQueueLimit="10"
memoryLimit="60" webGarden="False" cpuMask="0xffffffff"
userName="machine" password="AutoGenerate" logLevel="Errors"
clientConnectedCheck="00:00:05"
comAuthenticationLevel="Connect" comImpersonationLevel="Impersonate"
responseDeadlockInterval="00:03:00"
responseRestartDeadlockInterval="00:03:00" autoConfig="True"
maxWorkerThreads="20" maxIoThreads="20" minWorkerThreads="1"
minIoThreads="1" serverErrorMessageFile="" pingFrequency="Infinite"
pingTimeout="Infinite" asyncOption="20" maxAppDomains="2000"
/>
```
The following code example demonstrates how to use the <xref:System.Web.Configuration.ProcessModelSection> class.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet1":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet1":::
]]></format>
</remarks>
<altmember cref="T:System.Web.Configuration.ProcessModelSection" />
<altmember cref="T:System.Web.Configuration.ProcessModelLogLevel" />
<altmember cref="T:System.Web.Configuration.ProcessModelComAuthenticationLevel" />
<altmember cref="T:System.Web.Configuration.ProcessModelComImpersonationLevel" />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ProcessModelSection ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Web.Configuration.ProcessModelSection.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:
 ProcessModelSection();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.Web.Configuration.ProcessModelSection" /> class using default settings.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.Configuration.ProcessModelSection.%23ctor%2A> constructor is not intended to be used directly from your code. It is called by the ASP.NET configuration system. You obtain an instance of the <xref:System.Web.Configuration.ProcessModelSection> class by using the <xref:System.Configuration.Configuration.GetSection%2A> method.
]]></format>
</remarks>
<altmember cref="T:System.Configuration.ConfigurationAllowDefinition" />
</Docs>
</Member>
<Member MemberName="AutoConfig">
<MemberSignature Language="C#" Value="public bool AutoConfig { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool AutoConfig" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.AutoConfig" />
<MemberSignature Language="VB.NET" Value="Public Property AutoConfig As Boolean" />
<MemberSignature Language="F#" Value="member this.AutoConfig : bool with get, set" Usage="System.Web.Configuration.ProcessModelSection.AutoConfig" />
<MemberSignature Language="C++ CLI" Value="public:
 property bool AutoConfig { bool get(); void set(bool value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("autoConfig", DefaultValue=false)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("autoConfig", DefaultValue=false)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating whether ASP.NET performance settings are automatically configured for ASP.NET applications.</summary>
<value>
<see langword="true" /> if performance settings are automatically configured for ASP.NET applications; otherwise, <see langword="false" />. The default value is <see langword="false" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If the <xref:System.Web.Configuration.ProcessModelSection.AutoConfig%2A> value is set to `false`, explicit Web.config values are used to determine performance configuration for the ASP.NET application. If the <xref:System.Web.Configuration.ProcessModelSection.AutoConfig%2A> value is set to `true`, the performance settings are automatically configured for the ASP.NET application.
The <xref:System.Web.Configuration.ProcessModelSection.AutoConfig%2A> value is explicitly set to `true` in the Machine.config file. The default code value is set to `false`. If the <xref:System.Web.Configuration.ProcessModelSection.AutoConfig%2A> value is removed from Machine.config, the explicit settings are used instead of the auto-configured settings.
]]></format>
</remarks>
<altmember cref="P:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads" />
<altmember cref="P:System.Web.Configuration.ProcessModelSection.MaxIOThreads" />
<altmember cref="P:System.Web.Configuration.HttpRuntimeSection.MinFreeThreads" />
<altmember cref="P:System.Web.Configuration.HttpRuntimeSection.MinLocalRequestFreeThreads" />
<altmember cref="P:System.Net.Configuration.ConnectionManagementElement.MaxConnection" />
</Docs>
</Member>
<Member MemberName="ClientConnectedCheck">
<MemberSignature Language="C#" Value="public TimeSpan ClientConnectedCheck { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan ClientConnectedCheck" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.ClientConnectedCheck" />
<MemberSignature Language="VB.NET" Value="Public Property ClientConnectedCheck As TimeSpan" />
<MemberSignature Language="F#" Value="member this.ClientConnectedCheck : TimeSpan with get, set" Usage="System.Web.Configuration.ProcessModelSection.ClientConnectedCheck" />
<MemberSignature Language="C++ CLI" Value="public:
 property TimeSpan ClientConnectedCheck { TimeSpan get(); void set(TimeSpan value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("clientConnectedCheck", DefaultValue="00:00:05")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("clientConnectedCheck", DefaultValue="00:00:05")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating how long a request is left in the queue.</summary>
<value>A <see cref="T:System.TimeSpan" /> value indicating the queuing time. The default value is 5 seconds.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This property specifies how long a request is queued before ASP.NET performs a client connected check.
> [!NOTE]
> If the interval expires while the request is still queued, a client connected check is done before passing the request over to the ASP.NET worker process for handling.
## Examples
The following code example shows how to access and modify the <xref:System.Web.Configuration.ProcessModelSection.ClientConnectedCheck%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet18":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet18":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ComAuthenticationLevel">
<MemberSignature Language="C#" Value="public System.Web.Configuration.ProcessModelComAuthenticationLevel ComAuthenticationLevel { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Web.Configuration.ProcessModelComAuthenticationLevel ComAuthenticationLevel" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.ComAuthenticationLevel" />
<MemberSignature Language="VB.NET" Value="Public Property ComAuthenticationLevel As ProcessModelComAuthenticationLevel" />
<MemberSignature Language="F#" Value="member this.ComAuthenticationLevel : System.Web.Configuration.ProcessModelComAuthenticationLevel with get, set" Usage="System.Web.Configuration.ProcessModelSection.ComAuthenticationLevel" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::Configuration::ProcessModelComAuthenticationLevel ComAuthenticationLevel { System::Web::Configuration::ProcessModelComAuthenticationLevel get(); void set(System::Web::Configuration::ProcessModelComAuthenticationLevel value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("comAuthenticationLevel", DefaultValue=System.Web.Configuration.ProcessModelComAuthenticationLevel.Connect)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("comAuthenticationLevel", DefaultValue=System.Web.Configuration.ProcessModelComAuthenticationLevel.Connect)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.Configuration.ProcessModelComAuthenticationLevel</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the level of authentication for DCOM security.</summary>
<value>One of the <see cref="T:System.Web.Configuration.ProcessModelComAuthenticationLevel" /> values. The default value is <see cref="F:System.Web.Configuration.ProcessModelComAuthenticationLevel.Connect" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
When this property value is set to <xref:System.Web.Configuration.ProcessModelComAuthenticationLevel.Default>, DCOM determines the authentication level using its normal security-negotiation algorithm. The default value assigned to this property, as specified in the Machine.config file, is <xref:System.Web.Configuration.ProcessModelComAuthenticationLevel.Connect>. In this case, DCOM authenticates the credentials of the client only when the client establishes a relationship with the server.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.ComAuthenticationLevel%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet21":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet21":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ComImpersonationLevel">
<MemberSignature Language="C#" Value="public System.Web.Configuration.ProcessModelComImpersonationLevel ComImpersonationLevel { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Web.Configuration.ProcessModelComImpersonationLevel ComImpersonationLevel" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.ComImpersonationLevel" />
<MemberSignature Language="VB.NET" Value="Public Property ComImpersonationLevel As ProcessModelComImpersonationLevel" />
<MemberSignature Language="F#" Value="member this.ComImpersonationLevel : System.Web.Configuration.ProcessModelComImpersonationLevel with get, set" Usage="System.Web.Configuration.ProcessModelSection.ComImpersonationLevel" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::Configuration::ProcessModelComImpersonationLevel ComImpersonationLevel { System::Web::Configuration::ProcessModelComImpersonationLevel get(); void set(System::Web::Configuration::ProcessModelComImpersonationLevel value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("comImpersonationLevel", DefaultValue=System.Web.Configuration.ProcessModelComImpersonationLevel.Impersonate)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("comImpersonationLevel", DefaultValue=System.Web.Configuration.ProcessModelComImpersonationLevel.Impersonate)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.Configuration.ProcessModelComImpersonationLevel</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the level of authentication for COM security.</summary>
<value>One of the <see cref="T:System.Web.Configuration.ProcessModelComImpersonationLevel" /> values. The default value is <see cref="F:System.Web.Configuration.ProcessModelComImpersonationLevel.Impersonate" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
When this property value is set to <xref:System.Web.Configuration.ProcessModelComImpersonationLevel.Default>, DCOM determines the impersonation level using its normal security-negotiation algorithm. The default value assigned to this property, as specified in the Machine.config file, is <xref:System.Web.Configuration.ProcessModelComImpersonationLevel.Impersonate>. In this case, the server process can impersonate the client's security context while acting on behalf of the client.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.ComImpersonationLevel%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet22":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet22":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="CpuMask">
<MemberSignature Language="C#" Value="public int CpuMask { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 CpuMask" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.CpuMask" />
<MemberSignature Language="VB.NET" Value="Public Property CpuMask As Integer" />
<MemberSignature Language="F#" Value="member this.CpuMask : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.CpuMask" />
<MemberSignature Language="C++ CLI" Value="public:
 property int CpuMask { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("cpuMask", DefaultValue="0xffffffff")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("cpuMask", DefaultValue="0xffffffff")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating which processors on a multiprocessor server are eligible to run ASP.NET processes.</summary>
<value>The number representing the bit pattern to apply. The default value is 0xFFFFFFFF.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.Configuration.ProcessModelSection.CpuMask%2A> value specifies a bit pattern that indicates the CPUs eligible to run ASP.NET threads. If the <xref:System.Web.Configuration.ProcessModelSection.WebGarden%2A> property is set to `true`, the <xref:System.Web.Configuration.ProcessModelSection.CpuMask%2A> limits worker processes to the number of eligible CPUs. The maximum allowed number of worker processes is equal to the number of CPUs. By default, all CPUs are enabled and ASP.NET launches one process for each CPU. If the <xref:System.Web.Configuration.ProcessModelSection.WebGarden%2A> property is set to `false`, the <xref:System.Web.Configuration.ProcessModelSection.CpuMask%2A> attribute is ignored and only one worker process will run.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.CpuMask%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet25":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet25":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ElementProperty">
<MemberSignature Language="C#" Value="protected override System.Configuration.ConfigurationElementProperty ElementProperty { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Configuration.ConfigurationElementProperty ElementProperty" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.ElementProperty" />
<MemberSignature Language="VB.NET" Value="Protected Overrides ReadOnly Property ElementProperty As ConfigurationElementProperty" />
<MemberSignature Language="F#" Value="member this.ElementProperty : System.Configuration.ConfigurationElementProperty" Usage="System.Web.Configuration.ProcessModelSection.ElementProperty" />
<MemberSignature Language="C++ CLI" Value="protected:
 virtual property System::Configuration::ConfigurationElementProperty ^ ElementProperty { System::Configuration::ConfigurationElementProperty ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Configuration.ConfigurationElementProperty</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="Enable">
<MemberSignature Language="C#" Value="public bool Enable { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool Enable" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.Enable" />
<MemberSignature Language="VB.NET" Value="Public Property Enable As Boolean" />
<MemberSignature Language="F#" Value="member this.Enable : bool with get, set" Usage="System.Web.Configuration.ProcessModelSection.Enable" />
<MemberSignature Language="C++ CLI" Value="public:
 property bool Enable { bool get(); void set(bool value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("enable", DefaultValue=true)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("enable", DefaultValue=true)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating whether the process model is enabled.</summary>
<value>
<see langword="true" /> if the process model is enabled; otherwise, <see langword="false" />. The default value is <see langword="true" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.Configuration.ProcessModelSection.Enable%2A> property specifies whether ASP.NET is hosted in an external worker process. If <xref:System.Web.Configuration.ProcessModelSection.Enable%2A> is `true`, ASP.NET is hosted in an external worker process; otherwise, it runs directly in Inetinfo.exe.
> [!NOTE]
> Running ASP.NET in Inetinfo.exe is not recommended, because this involves running the application in the Local System security context. When ASP.NET runs in Internet Information Services (IIS) 6 native mode, this setting is ignored, so there is usually no reason to set it to `false`.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.Enable%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet2":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet2":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="IdleTimeout">
<MemberSignature Language="C#" Value="public TimeSpan IdleTimeout { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan IdleTimeout" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.IdleTimeout" />
<MemberSignature Language="VB.NET" Value="Public Property IdleTimeout As TimeSpan" />
<MemberSignature Language="F#" Value="member this.IdleTimeout : TimeSpan with get, set" Usage="System.Web.Configuration.ProcessModelSection.IdleTimeout" />
<MemberSignature Language="C++ CLI" Value="public:
 property TimeSpan IdleTimeout { TimeSpan get(); void set(TimeSpan value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("idleTimeout", DefaultValue="10675199.02:48:05.4775807")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("idleTimeout", DefaultValue="10675199.02:48:05.4775807")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the period of inactivity after which ASP.NET automatically ends the worker process.</summary>
<value>A <see cref="T:System.TimeSpan" /> value indicating the idle time. The default value is Infinite, which corresponds to <see cref="F:System.TimeSpan.MaxValue">TimeSpan.MaxValue</see>.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The worker process is restarted (bounced) when the <xref:System.Web.Configuration.ProcessModelSection.IdleTimeout%2A> property value is reached. By default, only two conditions cause the process to bounce: the process exceeds the allowed memory limit, or the process exceeds the allowed number of requests that can be queued. You can add other conditions to the default ones. For example, you can use the <xref:System.Web.Configuration.ProcessModelSection.IdleTimeout%2A> property to limit the time the worker process is idle.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.IdleTimeout%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet16":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet16":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="LogLevel">
<MemberSignature Language="C#" Value="public System.Web.Configuration.ProcessModelLogLevel LogLevel { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Web.Configuration.ProcessModelLogLevel LogLevel" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.LogLevel" />
<MemberSignature Language="VB.NET" Value="Public Property LogLevel As ProcessModelLogLevel" />
<MemberSignature Language="F#" Value="member this.LogLevel : System.Web.Configuration.ProcessModelLogLevel with get, set" Usage="System.Web.Configuration.ProcessModelSection.LogLevel" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::Web::Configuration::ProcessModelLogLevel LogLevel { System::Web::Configuration::ProcessModelLogLevel get(); void set(System::Web::Configuration::ProcessModelLogLevel value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("logLevel", DefaultValue=System.Web.Configuration.ProcessModelLogLevel.Errors)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("logLevel", DefaultValue=System.Web.Configuration.ProcessModelLogLevel.Errors)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Web.Configuration.ProcessModelLogLevel</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the event types to be logged to the event log.</summary>
<value>One of the <see cref="T:System.Web.Configuration.ProcessModelLogLevel" /> values. The default value is <see cref="F:System.Web.Configuration.ProcessModelLogLevel.Errors" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
By using this property correctly, you can filter the errors the system can log. After you have an idea of the application's malfunctions or bottlenecks, you might want to devise a strategy that narrows the range of errors you are interested in.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.LogLevel%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet23":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet23":::
]]></format>
</remarks>
<altmember cref="T:System.Web.Configuration.ProcessModelLogLevel" />
</Docs>
</Member>
<Member MemberName="MaxAppDomains">
<MemberSignature Language="C#" Value="public int MaxAppDomains { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MaxAppDomains" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MaxAppDomains" />
<MemberSignature Language="VB.NET" Value="Public Property MaxAppDomains As Integer" />
<MemberSignature Language="F#" Value="member this.MaxAppDomains : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MaxAppDomains" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MaxAppDomains { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("maxAppDomains", DefaultValue=2000)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("maxAppDomains", DefaultValue=2000)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the maximum allowed number of application domains in one process.</summary>
<value>The maximum allowed number of application domains in one process.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If the <xref:System.Web.Configuration.ProcessModelSection.MaxAppDomains%2A> threshold is exceeded, the least-used application domain is shut down if a new application domain must start.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MaxAppDomains%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet27":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet27":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MaxIOThreads">
<MemberSignature Language="C#" Value="public int MaxIOThreads { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MaxIOThreads" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MaxIOThreads" />
<MemberSignature Language="VB.NET" Value="Public Property MaxIOThreads As Integer" />
<MemberSignature Language="F#" Value="member this.MaxIOThreads : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MaxIOThreads" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MaxIOThreads { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("maxIoThreads", DefaultValue=20)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("maxIoThreads", DefaultValue=20)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the maximum number of I/O threads per CPU in the CLR thread pool.</summary>
<value>The maximum number of threads. The default is 20.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The value of <xref:System.Web.Configuration.ProcessModelSection.MaxIOThreads%2A> must be equal to or greater than the <xref:System.Web.Configuration.HttpRuntimeSection.MinFreeThreads%2A> setting in the `httpRuntime` configuration section.
You can have some control over the CPU utilization by setting the number of worker threads and I/O threads, using the <xref:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads%2A> property and the <xref:System.Web.Configuration.ProcessModelSection.MaxIOThreads%2A> property respectively.
The difference between the two types of threads is that the latter are bound to I/O objects, such as a stream or a pipe, and the former are traditional unrestricted threads. For Internet Information Services (IIS) version 6.0 and later, ASP.NET processes requests on worker threads. This is because ASP.NET is integrated within IIS.
These threads are obtained from the process-wide CLR thread pool belonging to an application.
> [!NOTE]
> Usually the default values for the allowed threads are sufficient to keep the CPU utilization high. If for some reason your application is slow, perhaps waiting for external resources, you could try to increase the number of threads to a value less than 100.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MaxIOThreads%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet5":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet5":::
]]></format>
</remarks>
<altmember cref="T:System.Web.Configuration.HttpRuntimeSection" />
</Docs>
</Member>
<Member MemberName="MaxWorkerThreads">
<MemberSignature Language="C#" Value="public int MaxWorkerThreads { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MaxWorkerThreads" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads" />
<MemberSignature Language="VB.NET" Value="Public Property MaxWorkerThreads As Integer" />
<MemberSignature Language="F#" Value="member this.MaxWorkerThreads : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MaxWorkerThreads" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MaxWorkerThreads { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("maxWorkerThreads", DefaultValue=20)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("maxWorkerThreads", DefaultValue=20)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the maximum amount of worker threads per CPU in the CLR thread pool.</summary>
<value>The maximum number of threads. The default is 20.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The value of <xref:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads%2A> must be equal to or greater than the <xref:System.Web.Configuration.HttpRuntimeSection.MinFreeThreads%2A> setting in the `httpRuntime` configuration section.
You can have some control over the CPU utilization by setting the number of worker threads and I/O threads, using the <xref:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads%2A> property and, the <xref:System.Web.Configuration.ProcessModelSection.MaxIOThreads%2A> property, respectively.
The difference between the two types of threads is that the latter are bound to I/O objects, such as a stream or a pipe, and the former are traditional unrestricted threads. For Internet Information Services (IIS) version 6.0 and higher, ASP.NET processes requests on worker threads. This is because ASP.NET is integrated within IIS.
These threads are obtained from the process-wide CLR thread pool belonging to an application.
> [!NOTE]
> Usually the default values for the allowed threads are sufficient to keep the CPU utilization high. If for some reason your application is slow, perhaps waiting for external resources, you could try to increase the number of threads to a value less than 100.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MaxWorkerThreads%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet7":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet7":::
]]></format>
</remarks>
<altmember cref="T:System.Web.Configuration.HttpRuntimeSection" />
</Docs>
</Member>
<Member MemberName="MemoryLimit">
<MemberSignature Language="C#" Value="public int MemoryLimit { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MemoryLimit" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MemoryLimit" />
<MemberSignature Language="VB.NET" Value="Public Property MemoryLimit As Integer" />
<MemberSignature Language="F#" Value="member this.MemoryLimit : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MemoryLimit" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MemoryLimit { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("memoryLimit", DefaultValue=60)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("memoryLimit", DefaultValue=60)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the maximum allowed memory size.</summary>
<value>The percentage of the total system memory. The default is 60 percent.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The memory size is expressed as a percentage of the total system memory. This is the amount of memory a worker process can consume before ASP.NET restarts (bounces) it.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MemoryLimit%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet3":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet3":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MinIOThreads">
<MemberSignature Language="C#" Value="public int MinIOThreads { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MinIOThreads" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MinIOThreads" />
<MemberSignature Language="VB.NET" Value="Public Property MinIOThreads As Integer" />
<MemberSignature Language="F#" Value="member this.MinIOThreads : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MinIOThreads" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MinIOThreads { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("minIoThreads", DefaultValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("minIoThreads", DefaultValue=1)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the minimum number of I/O threads per CPU in the CLR thread pool.</summary>
<value>The minimum number of I/O threads per CPU in the CLR thread pool.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MinIOThreads%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet4":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet4":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MinWorkerThreads">
<MemberSignature Language="C#" Value="public int MinWorkerThreads { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 MinWorkerThreads" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.MinWorkerThreads" />
<MemberSignature Language="VB.NET" Value="Public Property MinWorkerThreads As Integer" />
<MemberSignature Language="F#" Value="member this.MinWorkerThreads : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.MinWorkerThreads" />
<MemberSignature Language="C++ CLI" Value="public:
 property int MinWorkerThreads { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("minWorkerThreads", DefaultValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("minWorkerThreads", DefaultValue=1)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MaxValue=2147483646, MinValue=1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the minimum number of worker threads per CPU in the CLR thread pool.</summary>
<value>The minimum number of worker threads per CPU in the CLR thread pool.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.MinWorkerThreads%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet6":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet6":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Password">
<MemberSignature Language="C#" Value="public string Password { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance string Password" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.Password" />
<MemberSignature Language="VB.NET" Value="Public Property Password As String" />
<MemberSignature Language="F#" Value="member this.Password : string with get, set" Usage="System.Web.Configuration.ProcessModelSection.Password" />
<MemberSignature Language="C++ CLI" Value="public:
 property System::String ^ Password { System::String ^ get(); void set(System::String ^ value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("password", DefaultValue="AutoGenerate")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("password", DefaultValue="AutoGenerate")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the password to use for the Windows identity.</summary>
<value>The password to use. The default value is AutoGenerate.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The <xref:System.Web.Configuration.ProcessModelSection.Password%2A> property must be used with the <xref:System.Web.Configuration.ProcessModelSection.UserName%2A> property.
When present, these property values cause the worker process to run with the configured Windows identity.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.Password%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet20":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet20":::
]]></format>
</remarks>
<related type="Article" href="https://learn.microsoft.com/previous-versions/aspnet/53tyfkaw(v=vs.100)">Encrypting Configuration Information using Protected Configuration</related>
</Docs>
</Member>
<Member MemberName="PingFrequency">
<MemberSignature Language="C#" Value="public TimeSpan PingFrequency { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan PingFrequency" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.PingFrequency" />
<MemberSignature Language="VB.NET" Value="Public Property PingFrequency As TimeSpan" />
<MemberSignature Language="F#" Value="member this.PingFrequency : TimeSpan with get, set" Usage="System.Web.Configuration.ProcessModelSection.PingFrequency" />
<MemberSignature Language="C++ CLI" Value="public:
 property TimeSpan PingFrequency { TimeSpan get(); void set(TimeSpan value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("pingFrequency", DefaultValue="10675199.02:48:05.4775807")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("pingFrequency", DefaultValue="10675199.02:48:05.4775807")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the time interval at which the ISAPI extension pings the worker process to determine whether it is running.</summary>
<value>The <see cref="T:System.TimeSpan" /> defining the time interval. The default is 30 seconds.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The worker process is restarted (bounced) if it is not running after the <xref:System.Web.Configuration.ProcessModelSection.PingFrequency%2A> interval has expired.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.PingFrequency%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet13":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet13":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="PingTimeout">
<MemberSignature Language="C#" Value="public TimeSpan PingTimeout { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.TimeSpan PingTimeout" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.PingTimeout" />
<MemberSignature Language="VB.NET" Value="Public Property PingTimeout As TimeSpan" />
<MemberSignature Language="F#" Value="member this.PingTimeout : TimeSpan with get, set" Usage="System.Web.Configuration.ProcessModelSection.PingTimeout" />
<MemberSignature Language="C++ CLI" Value="public:
 property TimeSpan PingTimeout { TimeSpan get(); void set(TimeSpan value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteTimeSpanConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("pingTimeout", DefaultValue="10675199.02:48:05.4775807")]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("pingTimeout", DefaultValue="10675199.02:48:05.4775807")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.TimeSpan</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the time interval after which a non-responsive worker process is restarted.</summary>
<value>The <see cref="T:System.TimeSpan" /> defining the time interval. The default is 5 seconds.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The ISAPI extensions ping the worker process at the <xref:System.Web.Configuration.ProcessModelSection.PingFrequency%2A> interval. If the worker process does not respond within the <xref:System.Web.Configuration.ProcessModelSection.PingTimeout%2A> interval, the process is restarted.
## Examples
The following code example shows how to access the <xref:System.Web.Configuration.ProcessModelSection.PingTimeout%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet14":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet14":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Properties">
<MemberSignature Language="C#" Value="protected override System.Configuration.ConfigurationPropertyCollection Properties { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Configuration.ConfigurationPropertyCollection Properties" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.Properties" />
<MemberSignature Language="VB.NET" Value="Protected Overrides ReadOnly Property Properties As ConfigurationPropertyCollection" />
<MemberSignature Language="F#" Value="member this.Properties : System.Configuration.ConfigurationPropertyCollection" Usage="System.Web.Configuration.ProcessModelSection.Properties" />
<MemberSignature Language="C++ CLI" Value="protected:
 virtual property System::Configuration::ConfigurationPropertyCollection ^ Properties { System::Configuration::ConfigurationPropertyCollection ^ get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName Language="C#">[get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]</AttributeName>
<AttributeName Language="F#">[<get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Configuration.ConfigurationPropertyCollection</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="RequestLimit">
<MemberSignature Language="C#" Value="public int RequestLimit { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 RequestLimit" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.RequestLimit" />
<MemberSignature Language="VB.NET" Value="Public Property RequestLimit As Integer" />
<MemberSignature Language="F#" Value="member this.RequestLimit : int with get, set" Usage="System.Web.Configuration.ProcessModelSection.RequestLimit" />
<MemberSignature Language="C++ CLI" Value="public:
 property int RequestLimit { int get(); void set(int value); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Web</AssemblyName>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName Language="C#">[System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteIntConverter))]</AttributeName>
<AttributeName Language="F#">[<System.ComponentModel.TypeConverter(typeof(System.Configuration.InfiniteIntConverter))>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.ConfigurationProperty("requestLimit", DefaultValue=2147483647)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.ConfigurationProperty("requestLimit", DefaultValue=2147483647)>]</AttributeName>
</Attribute>
<Attribute>
<AttributeName Language="C#">[System.Configuration.IntegerValidator(MinValue=0)]</AttributeName>
<AttributeName Language="F#">[<System.Configuration.IntegerValidator(MinValue=0)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Int32</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value indicating the number of requests allowed before a worker process is recycled.</summary>
<value>The number of allowed requests. The default is Infinite.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If the number of requests is exceeded, ASP.NET automatically launches a new worker process to take the place of the current one.
## Examples
The following code example shows how to use the <xref:System.Web.Configuration.ProcessModelSection.RequestLimit%2A> property.
:::code language="csharp" source="~/snippets/csharp/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/CS/processmodelsection.cs" id="Snippet8":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_WebNet/System.Web.Configuration.ProcessModelSection/VB/processmodelsection.vb" id="Snippet8":::
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="RequestQueueLimit">
<MemberSignature Language="C#" Value="public int RequestQueueLimit { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance int32 RequestQueueLimit" />
<MemberSignature Language="DocId" Value="P:System.Web.Configuration.ProcessModelSection.RequestQueueLimit" />
<MemberSignature Language="VB.NET" Value="Public Property RequestQueueLimit As Integer" />