Путаница с использованием пула с списком в очереди. Я получаю ошибку: TypeError: объект 'int' не является итерабельным при передаче q.get вместо списка. Надеюсь, это просто недосмотр.Передача очереди в Threadpool - Python
from multiprocessing.dummy import Pool
import Queue
numbers = [11,12,13,14]
def printNumbers(n):
print n
q = Queue.Queue()
for i in (1,2,3,4):
q.put(i)
#multiThread with list numbers
pool = Pool(4)
results = pool.map(printNumbers, numbers)
pool.close()
pool.join()
#multiThread with queue
pool2 = Pool(4)
results2 = pool2.map(printNumbers, q.get())
pool2.close()
pool2.join()
Почему вы хотите использовать очередь на этом этапе. И кстати. помните о различиях потоков и многопроцессов. –
Очередь, поскольку она будет расти по мере того, как потоки вытягиваются из нее (исследование потока и многопроцессорности теперь). Конечная цель - это скрипт, который перемещается по каталогу и создает переменную fileInfo var, используемую в команде pycurl, а затем выводит в журнал. В настоящий момент в порядке -> проведите прогулку, возьмите следующий файл, потяните информацию с корневого пути, загрузите через curl, выведите на вход/сбой журнала. Нанесение огромных временных задержек на завиту, поэтому с помощью потоков Будущая цель -> Прогулка по парку, заполнение очереди с информацией о файле -> вытащить из очереди с несколькими потоками, выполняющими команду curl -> заполнить logQueue с успехом/неудачей -> функция pull от logQueue до Написать – Tyler