Win32_PerfRawData_NETFramework_NETCLRLocksAndThreads jscript sample code
The foundations for Manageability in Windows is Windows Management Instrumentation (WMI; formerly WBEM) and WMI extensions for Windows Driver Model (WDM).
ActiveXperts Network Monitor provides the ability to build monitor check routines based on WMI. ActiveXperts has collected more than a hundred WMI samples. You can use these samples as a base for new check routines you can write yourself. The Win32_PerfRawData_NETFramework_NETCLRLocksAndThreads WMI class can be used in ActiveXperts Network Monitor to monitor your servers.
Sample Code
var wbemFlagReturnImmediately = 0x10; var wbemFlagForwardOnly = 0x20; var arrComputers = new Array("\localhost"); for (i = 0; i < arrComputers.length; i++) { WScript.Echo(); WScript.Echo("=========================================="); WScript.Echo("Computer: " + arrComputers[i]); WScript.Echo("=========================================="); var objWMIService = GetObject("winmgmts:\\\\" + arrComputers[i] + "\\root\\CIMV2"); var colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PerfRawData_NETFramework_NETCLRLocksAndThreads", "WQL", wbemFlagReturnImmediately | wbemFlagForwardOnly); var enumItems = new Enumerator(colItems); for (; !enumItems.atEnd(); enumItems.moveNext()) { var objItem = enumItems.item(); WScript.Echo("Caption: " + objItem.Caption); WScript.Echo("ContentionRatePersec: " + objItem.ContentionRatePersec); WScript.Echo("CurrentQueueLength: " + objItem.CurrentQueueLength); WScript.Echo("Description: " + objItem.Description); WScript.Echo("Frequency_Object: " + objItem.Frequency_Object); WScript.Echo("Frequency_PerfTime: " + objItem.Frequency_PerfTime); WScript.Echo("Frequency_Sys100NS: " + objItem.Frequency_Sys100NS); WScript.Echo("Name: " + objItem.Name); WScript.Echo("NumberofcurrentlogicalThreads: " + objItem.NumberofcurrentlogicalThreads); WScript.Echo("NumberofcurrentphysicalThreads: " + objItem.NumberofcurrentphysicalThreads); WScript.Echo("Numberofcurrentrecognizedthreads: " + objItem.Numberofcurrentrecognizedthreads); WScript.Echo("Numberoftotalrecognizedthreads: " + objItem.Numberoftotalrecognizedthreads); WScript.Echo("QueueLengthPeak: " + objItem.QueueLengthPeak); WScript.Echo("QueueLengthPersec: " + objItem.QueueLengthPersec); WScript.Echo("rateofrecognizedthreadsPersec: " + objItem.rateofrecognizedthreadsPersec); WScript.Echo("Timestamp_Object: " + objItem.Timestamp_Object); WScript.Echo("Timestamp_PerfTime: " + objItem.Timestamp_PerfTime); WScript.Echo("Timestamp_Sys100NS: " + objItem.Timestamp_Sys100NS); WScript.Echo("TotalNumberofContentions: " + objItem.TotalNumberofContentions); } }