Использование Python 2.7.3 в Windows.Как распределить переменную между 2 потоками
Как можно разделить переменную num
между потоками, чтобы после num
был квадрат, он печатается?
Я понял, что мне нужно понять, как работают нитки, но документов не так много, и я ничего здесь не нашел.
Итак, может кто-нибудь объяснить, как работают потоки и как делиться между ними 2 темы?
Мой код (продолжает печать 2
)
import threading
def func1(num):
while num < 100000000:
num = num**2
def func2(num):
while num < 100000000:
print num,
num = 2
thread1 = threading.Thread(target=func1,args=(num,))
thread2 = threading.Thread(target=func2,args=(num,))
print 'setup'
thread1.start()
thread2.start()
Итак, очередь - это механизм связи между двумя потоками. Кроме того, очередь может содержать любую структуру данных, правильно? – pradyunsg
Да, очередь - это потокобезопасный способ связи. Он может содержать любые данные, списки, dicts, даже Exceptions (которые могут быть полезны для отправки обратно в основной процесс). – uselpa
Спасибо за очищение моего сомнения. Небольшой вопрос (до того, как я перевежу). У меня может быть любое количество очередей (как ограничено по мощности обработки). Я прав? – pradyunsg