CLR Lock Threads Test
This test monitors the thread locking activity on the ASP .Net server.
Target of the test : An ASP .Net server
Agent deploying the test : An internal agent
Outputs of the test : One set of results for the ASP .Net server being monitored.
Parameter | Description |
---|---|
Test Period |
How often should the test be executed |
Host |
The IP address of the host for which this test is to be configured. |
Port |
The port at which the specified Host listens. |
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Queue length rate |
Indicates the rate at which threads are waiting to acquire some lock in the application. |
Threads/Sec |
|
Recognized threads rate |
Indicates the number of threads per second that have been recognized by the CLR. |
Threads/Sec |
The recognized threads have a corresponding .NET thread object associated with them. These threads are not created by the CLR; they are created outside the CLR but have since run inside the CLR at least once. Only unique threads are tracked; threads with the same thread ID re-entering the CLR or recreated after thread exit are not counted twice. |
Queue length peak |
Indicates the total number of threads that waited to acquire some managed lock during the last measurement period. |
Number |
A high turnover rate indicates that items are being quickly added and removed, which can be expensive. |
Recognized threads |
Indicates the total number of threads that have been recognized by the CLR during the last measurement period. |
Number |
The recognized threads have a corresponding .NET thread object associated with them. These threads are not created by the CLR; they are created outside the CLR but have since run inside the CLR at least once. Only unique threads are tracked; threads with the same thread ID re-entering the CLR or recreated after thread exit are not counted twice. |
Contention threads |
Indicates the total number of times threads in the CLR have attempted to acquire a managed lock unsuccessfully. |
Number |
Managed locks can be acquired in many ways; by the lock statement in C# or by calling System.Monitor.Enter or by using MethodImplOptions.Synchronized custom attribute. |