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

回答編集履歴

2

誤字脱字修正

2019/09/24 13:13

投稿

nomuken
nomuken

スコア1627

answer CHANGED
@@ -70,7 +70,7 @@
70
70
  app.MainLoop()
71
71
  ```
72
72
 
73
- スレッドを使わなければならない場合(メモリ節約やMainスレッドをできるだけMainLoopにいさせたい場合)はwx.PostEventを方法もあると思います。
73
+ スレッドを使わなければならない場合(メモリ節約やMainスレッドをできるだけMainLoopにいさせたい場合)はwx.PostEventを使用する方法もあると思います。
74
- スレッド側でbmp生成まで行った後、そのデータイベントの付加データとしてメインスレッドに投げて、メインスレッドで描画更新をするという流れになります。(その場合、フレーム間隔をどうするかは別途考える必要あり)
74
+ スレッド側でbmp生成まで行った後、そのデータイベントの付加データとしてメインスレッドに投げて、メインスレッドで描画更新をするという流れになります。(その場合、フレーム間隔をどうするかは別途考える必要あり)
75
75
 
76
76
  参考記事:[マルチスレッドでwxPython](http://zaikeyuki.blog96.fc2.com/blog-entry-18.html)

1

wx.PostEvent利用の提案

2019/09/24 13:13

投稿

nomuken
nomuken

スコア1627

answer CHANGED
@@ -1,4 +1,4 @@
1
- wxがどこまでマルチスレッドに対応しているか不明なのでスレッドを使手法はやめたほうがいいのではと思います。
1
+ wxのGUI制御がどこまでマルチスレッドに対応しているか不明なので画面更新をスレッドで行はやめたほうがいいのではと思います。
2
2
 
3
3
  タイマー処理を使うのが現実的かもしれません。
4
4
 
@@ -68,4 +68,9 @@
68
68
  #thread.start()
69
69
 
70
70
  app.MainLoop()
71
- ```
71
+ ```
72
+
73
+ スレッドを使わなければならない場合(メモリ節約やMainスレッドをできるだけMainLoopにいさせたい場合)はwx.PostEventを方法もあると思います。
74
+ スレッド側でbmp生成まで行った後、そのデータとイベントの付加データとしてメインスレッドに投げて、メインスレッドで描画更新をするという流れになります。(その場合、フレーム間隔をどうするかは別途考える必要あり)
75
+
76
+ 参考記事:[マルチスレッドでwxPython](http://zaikeyuki.blog96.fc2.com/blog-entry-18.html)