多线程脚本首先使用.start(),它不是在所有python上运行其他的

时间:2016-02-21 18:32:32

标签: python multithreading

所以这是我脚本中的一个片段(主要的一个脚本需要运行10个脚本,这里我只测试两个脚本)

(echo 0)>mybatch.bat:count

哪个#parent.py from threading import Thread import sys sys.path.append('/python/loanrates/BTC') sys.path.append('/python/loanrates/ETH') import BTC import ETH t5 = Thread(target=ETH.main()) t1 = Thread(target=BTC.main()) t5.start() t1.start() 首先是运行的脚本,而下面的脚本不运行。我是多线程的新手,它实际上早先用两个工作然后我尝试了所有10,它没有工作回到两个,现在也不起作用,任何帮助将不胜感激。

此处的Ps是其中一个子脚本http://pastebin.com/bxzdNeYp

的示例

1 个答案:

答案 0 :(得分:1)

线程目标应该是可调用的 - 没有():

t = Thread(target=my_function)

等待所有线程的执行,你需要使用等待线程执行的join。在您的代码中:

t5.join()
t1.join()

如果你有很多线程,只需将它们存储到数组中然后遍历数组并在每个线程上调用join