Я пытаюсь использовать python для кодирования многопоточной программы. Поскольку я очень новичок в python, я утверждаю, что если бы я спросил что-то общее.с использованием многопоточной функции excute member в Python
Вот мой код в основном:
multi_threads = []
simulator = Simulation(simulation_number)
# Simulation is my class, run() is a member function
for i in range(0, thread_number):
multi_threads.append(Thread(target = simulator.run, args = (start, end,)))
for i in range(0, thread_number):
multi_threads[i].start()
multi_threads[i].join()
и имитация :: бежать:
def run(self, start, end):
# do something...
print "in run"
return
Я ожидаю увидеть in run
несколько раз. Но оказывается, что ничего нет.
Могу я узнать, что я не так? Спасибо заранее.
вы должны вызвать метод «start» .http: //docs.python.org/2/library/threading.html#threading.Thread.start – danihp
@ danihp Да, я назвал 'start' и' join' для каждого из потоки. – ChangeMyName
Вы должны сделать это в двух циклах, сначала в начале и в начале второго. Avoiid выполняет обе операции в одном цикле. – danihp