Найти - Пользователи
Полная версия: suspend/resume потока
Начало » Python для новичков » suspend/resume потока
1
AngrySpoon
Добрый день!
Ситуация следующая:

import multiprocessing
def testthread(index):
	tmpfile= open('c:\\test\\___testthread'+str(index)+'.tmp',"w",encoding='utf-8')
	i=0
	for i in range(999999):	
		tmpfile.write(str(index)+str(datetime.datetime.now().microsecond)+'\n')
	tmpfile.close()
if __name__ == '__main__':
	a=[]
	for i in range(20):
		a+=[multiprocessing.Process(target=testthread, args=(i,))] 
		a[i].start()

То есть, имеется функция, которая будет запускаться в 20 разных потоках. Функция исполняется долго.
Работать эти потоки должны параллельно. Собственно, вопрос: как можно приостановить работу потока (например, по ^C), а потом по какому-нить условию продолжить выполненение потока?

зы: это не совсем тот код, который будет использоваться, но смысл тот же. Не надо критиковать за бесполезность)))
AngrySpoon
Всем спасибо за оперативные ответы, решение следующее:
http://stackoverflow.com/questions/2804287/pausing-a-process
psutil умеет и тормозить, и возобновлять процессы.
на всякий случай - в linux я просто посылал сигнал SIGSTOP и SIGCONT для достижения того же результата
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB