Я думаю, что лучшее, что вы можете сделать, - это наблюдать значение ключа NSWorkspace.sharedWorkspace
со временем [110] и самостоятельно поддерживать порядок в списке. Конечно, это работает только для приложений, которые были сделаны первыми с момента запуска вашего приложения. Другие приложения будут оставаться неупорядоченными.
Вы могли бы хотеть запуститься со Сборщика "мусора". MSDN имеет некоторых участников, перечисленных здесь, который может показать Вам, как сделать, несколько вещей, как получают общий объем памяти, это думает, выделяется, сколько раз собрал GC. Что-либо более усовершенствованное, чем это, как получение количества объектов Вашего загруженного блока и необходимо будет, вероятно, использовать профилировщика или записать что-то сами.
Счетчики производительности Памяти.NET дадут Вам совокупную информацию, но не включают счетчики объекта. Для этого Вам будет нужен профилировщик.
Используя попытку WMI:
Получить использование процесса (W2K3/2K8):
"SELECT IDProcess, PercentPrivilegedTime, PercentProcessorTime, PercentUserTime FROM Win32_PerfFormattedData_PerfProc_Process where Name='process_name.exe'"
Для идентификации сайта используют это:
"SELECT ProcessId, CommandLine, WorkingSetSize, ThreadCount, PrivatePageCount, PageFileUsage, PageFaults, HandleCount, CreationDate, Caption FROM Win32_Process where Caption='process_name.exe'"
Используйте этот инструмент для испытуемого WQL
Или используйте инструмент PerfMon.
Для получения дополнительной информации о счетчиках см. Windows System Resource Manager Accounting, в конце документа.
Удачи.