
Zart
04.06.2017
19:24:13
ты нихуя не сказал
что значит "медленный"?
если ты тот список получаешь лишь раз - то не похуй ли?
>>> from win32process import EnumProcesses
>>> EnumProcesses()
(0, 4, 528, 532, 620, 760, 896, 912, 1004, 548, 1040, 1120, 1176, 1184, 1324, 1376, 1692, 1712, 1888, 1112, 2652, 2720, 2784, 2840, 2104, 2492, 2676, 2740, 3092, 3104, 3116, 3128, 3136, 3160, 3204, 3208, 3312, 3368, 3424, 3688, 4184, 4520, 4856, 3828, 4136, 19492, 19036, 28324, 28556, 28092, 9752, 10576, 15688, 24728, 14532, 24152, 11276, 20148, 18716, 1820, 7128, 26296, 20032, 16060, 10384, 26368, 15436, 20744, 28148, 12844, 19352, 9744, 27128, 11104, 10016, 28920, 16964, 13808, 29520, 16752, 29096, 16928, 15668, 18832, 4296, 7164, 22084, 17480, 27364, 29736, 11204, 15740, 17716, 2668, 28112, 16144, 15112, 24340, 24328, 14736, 5068, 17108, 13616, 3496, 20164, 19472, 4824, 20396, 24244, 14300, 24024, 12360, 836, 12600, 20268, 3940, 14272, 27456, 23732, 21244, 856, 12084, 27244, 21776, 816)
шустрее этого наверное не будет
у вми есть провайдер, который по сути дллка, в которой для вин32_процесс дергается вот этот Enum, после чего оно проходит по списку и дёргает тонну информации про каждый пид - имидж, коммандлайн, вот это всё
если будешь дергать это всё вручную, разницы по скорости толком и не будет
если ты всегда дёргаешь список через wmi.WMI().Win32_Process - то у тебя 90% времени уходит на коннект к вми неймспейсам...
лучше хранить вми объект и дёргать его инстансы
олсо в вми есть рефрешсет, когда тебе надо тонны параметров дёргать по удаленке
а самый важный вопрос - нахуй тебе вообще список процессов?