teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

3

QThreadの中断方法を追記

2020/06/07 13:38

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -19,4 +19,13 @@
19
19
  QThread については、
20
20
 
21
21
  - moveToThread は不要
22
- - terminateで強制終了 → whileループを抜けて終了させる
22
+ - terminateで強制終了 → whileループを抜けて終了させる
23
+
24
+
25
+ 具体的には
26
+
27
+ - ループの条件式を `while not self.isInterruptionRequested():` として、
28
+ - 停止処理は `thread.requestInterruption()` をメインスレッド側で呼び出す。
29
+ - runningフラグは省略できます。
30
+
31
+ [QThread::isInterruptionRequested](https://doc.qt.io/qt-5/qthread.html#isInterruptionRequested)

2

スロット接続について追記

2020/06/07 13:38

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -11,7 +11,8 @@
11
11
  + self.sendString.emit(alphabet)
12
12
  ```
13
13
 
14
- スロットの接続側も併せて変更が必要です
14
+ ~~スロットの接続側も併せて変更が必要です~~
15
+ 追記: 接続側は sendString.connect となっているのを確認
15
16
 
16
17
  ----
17
18
 

1

スレッドについて

2020/06/07 13:29

投稿

teamikl
teamikl

スコア8817

answer CHANGED
@@ -11,4 +11,11 @@
11
11
  + self.sendString.emit(alphabet)
12
12
  ```
13
13
 
14
- スロットの接続側も併せて変更が必要です
14
+ スロットの接続側も併せて変更が必要です
15
+
16
+ ----
17
+
18
+ QThread については、
19
+
20
+ - moveToThread は不要
21
+ - terminateで強制終了 → whileループを抜けて終了させる