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

回答編集履歴

1

リンクの追記と若干の修正

2015/11/19 15:30

投稿

KiyoshiMotoki
KiyoshiMotoki

スコア4791

answer CHANGED
@@ -1,7 +1,7 @@
1
1
  これだけで解決するかはわかりませんが、
2
2
  少なくとも`MyTimerTask#run`メソッド内で`text_ang.setText( S_ang )`を呼び出しているのはマズいです。
3
3
 
4
- Androidでは、UIスレッド(`Activity#onXXX`メソッドを呼び出しているスレッドのことです)以外のスレッドからUIを操作してはならないからです。
4
+ Androidでは、UIスレッド(`Activity#onXXX`メソッドを呼び出しているスレッドのことです)以外のスレッドからUIを操作してはならないからです。
5
5
 
6
6
  下記リンクの"スレッド"と"ワーカースレッド"という項目に、その説明があります。
7
7
  [http://developer.android.com/intl/ja/guide/components/processes-and-threads.html](http://developer.android.com/intl/ja/guide/components/processes-and-threads.html)
@@ -13,6 +13,8 @@
13
13
  以下、その他 気になった点を記載させていただきます。
14
14
  ## ScheduledExecutorService について
15
15
  抜粋したコードに含まれていないだけかもしれませんが、`ScheduledExecutorService#shutdown`メソッドを呼び出していないように見受けます。
16
+ [http://developer.android.com/intl/ja/reference/java/util/concurrent/ExecutorService.html#shutdown()](http://developer.android.com/intl/ja/reference/java/util/concurrent/ExecutorService.html#shutdown())
17
+ [https://docs.oracle.com/javase/jp/6/api/java/util/concurrent/ExecutorService.html#shutdown()](https://docs.oracle.com/javase/jp/6/api/java/util/concurrent/ExecutorService.html#shutdown())
16
18
 
17
19
  適切なタイミングでこれを呼び出さないと、アプリが終了した後も「タスクを管理するスレッド」が残り続けてしまいます。
18
20