PyQt5でマルチスレッドプログラミングをどのように扱いますか?

PyQt5でマルチスレッドプログラミングを扱う方法として、Pythonに組み込まれているthreadingモジュールやQThreadクラスを使用することができます。

スレッドを使用するためのモジュール:

import threading

def worker():
    print("Worker thread")

thread = threading.Thread(target=worker)
thread.start()

QThreadクラスを使用する。

from PyQt5.QtCore import QThread

class Worker(QThread):
    def run(self):
        print("Worker thread")

worker = Worker()
worker.start()

どの方法を使っても、主スレッドで時間のかかる操作を行わないように注意する必要があります。GUIインターフェースをブロックする可能性があります。メインスレッドとサブスレッドの間で通信するためには、シグナルとスロットメカニズムを使用するか、QThreadのfinishedシグナルを使用してスレッドが完了した後の処理を行うことができます。

コメントを残す 0

Your email address will not be published. Required fields are marked *


广告
広告は10秒後に閉じます。
bannerAds