因为只有继承 QObject 的类才能有信号和自定义信号,而 QRunnable 并不是继承自 QObject ,也不能用多继承的方式,这里考虑定义个全局的 QObject 变量用来存放一些定义好的可复用的信号。

pools 是 QThreadPool 实例

# 看图说话

  1. runnablesignal1
  2. 定义一个全局信号类
    runnablesignal2
  3. 在 QRunnable 中发送
    runnablesignal3