Pythonのパッケージを一括でアップデートするプログラムをマルチスレッドで書く
Pythonでスレッドを用いて一括で全パッケージのアップデートをしたいと思っています。
しかし、下記のコードはGoルーチンやPythonでマルチスレッドで実行した時のように早くなりません。なぜ、遅くなってしまうのでしょうか?
#!/usr/local/bin/python3.4
import subprocess
import os
import threading
import re
def update(package_name):
os.system("pip3.4 install " + package_name + " -U")
s = subprocess.check_output(["pip3.4", "freeze"]).decode()
package_list = re.findall(".+(?===)", s)
package_list.extend(["pip", "setuptools"])
print(package_list)
for v in package_list:
threading.Thread(target=update, args=(v,)).start()