2016-04-19 4 views
0

Я написал программу с Python и использует многопоточность, я хочу знать, сколько потоков было выполнено с учетом времени и всей статистики, есть ли способ использовать отладчик, чтобы иметь эти результаты?Количество просмотров в Python

PS: Я использую PyCharm.

ответ

1

Предполагая, что вы используете threading модуль, а не голые thread с, вы можете использовать threading.activeCount() следующим образом:

num_threads = threading.activeCount() 

, чтобы получить количество потоков. Чтобы получить резьбу сами, используйте threading.enumerate():

for th in threading.enumerate(): 
    # do whatever. 

Что касается сроков и других статистических данных, возможно, придется отслеживать их вручную, это выглядит как Thread объектов довольно скудны мета-данные.

+0

Я использовал threading.activeCount() на самом деле, чтобы рассчитать количество потоков, но мне пришлось изменить код, чтобы сделать это, и это довольно уродливо. На самом деле я нашел, что обработчик процессов Windows действительно отлично подходит для такого рода статистики, не касаясь самого кода, но я хотел знать, есть ли другой способ, возможно, специальный для python, и не касаясь кода, для статистики в реальном времени. –

+0

Обычно инструмент OS-level лучше подходит для такого рода вещей, поскольку ОС - это то, что контролирует процессы и потоки. Если вам необходимо принимать решения на основе этой информации в вашем коде, вы можете найти то, что вам нужно в модуле 'os', который предоставляет интерфейсы с любой ОС, в которой работает программа. Https: //docs.python. org/2/library/os.html Удачи чувак – Will

Смежные вопросы