Форум сайта python.su
0
всем привет.
уже голову сломал, никак не могу разобраться с многопоточностью.
нужно сделать множество запросов к разным скриптам. дабы ускорить процесс хочу сделать это все в несколько потоков. основной скрипт выглядит так:
j =0;
for req in requests:
#тут вычисляются param1 и param2
if makeRequest (urls[j], req, param1, param2):
print "ok"
j += 1
if j >= len(urls):
j = 0
Отредактировано (Янв. 24, 2012 00:24:41)
Офлайн
5
используйте модуль threading
создайте свой класс где в конструкторе инициализируете класс threading, там опишите метод run. Т.е. данный метод (ряд операций) будет проходить с каждым объектом. Чтоб запустить нужно вызвать не run а start.
Так же ознакомьтесь с очередями Queue.
И что то не совсем понял
x38Вы уж определитесь либо одновременно (параллельно) с использованием потоков, либо последовательно без их применения :)
вот собственно хотелось бы чтобы одновременно выполнялось несколько (например 10) makeRequest, чтобы при завершении одной, начинала выполняться следующая
Офлайн
0
спасибо, получилось
Piton23я определился :) имелось в виду что одновременных потоков будет фиксированное число, например 10. и пока 10 потоков выполняется, остальные задачи стоят в очереди, и по завершению какого либо потока, создавался новый. собственно это решил через Queue
Вы уж определитесь либо одновременно (параллельно) с использованием потоков, либо последовательно без их применения
Офлайн