-1
私は、cPythonインタプリタには、マルチコアプロセッサを搭載していてもOSが1つのスレッドを実行するGILがあることを知っています。一方、あるスレッドから別のスレッドに変更すると、少し時間がかかります。だから私はマルチタスクモードで効率を改善するためにもっとスレッドを使うことができますか?Pythonでマルチスレッドプログラミングを使用してコードの効率を改善できますか?
私は、cPythonインタプリタには、マルチコアプロセッサを搭載していてもOSが1つのスレッドを実行するGILがあることを知っています。一方、あるスレッドから別のスレッドに変更すると、少し時間がかかります。だから私はマルチタスクモードで効率を改善するためにもっとスレッドを使うことができますか?Pythonでマルチスレッドプログラミングを使用してコードの効率を改善できますか?
Pythonプログラムで複数のコアを使用するには、同時実行性を使用する必要があります。たとえば:あなたは別のコアで同時に、デ.start()
、デbThreadとしてではなく、methodBと同じように置くとき
import threading
def methodA():
#Do Something
def methodB():
#Do Something
aThread = threading.Thread(target=methodA)
aThread.start()
bThread= threading.Thread(target=methodA)
bThread.start()
aThreadはmethodAを実行します。別の例で使用するためのオプションや方法の多くの
aThread.join()
bThread.join()
#Then continue.
非常に大きな世界it'sa同時実行:
あなたは、彼らがこのように自分の仕事の使用.join()
を完了するまで、2つのスレッドを待つ必要がある場合。
公式siteにアクセスすることを本当にお勧めします。
[このスレッド]の可能な複製(https://stackoverflow.com/questions/20939299/does-python-support-multithreading-can-it-speed-up-execution-time?rq=1) – Gribouillis