頻繁に呼び出されるイベント メソッドを持つクラスがあります。メソッド名が onClicked だとしましょう。メソッド内で、いくつかのことを行うスレッドを作成します。
まず、イベントメソッド内にスレッドオブジェクトを作成してみました。コードは次のようになります。
public class MyService {
//Event method
public void onClick() {
new Thread(new Runnable() {
@Override
public void run() {
// do some stuff here
}
}).start();
}
}
しかし、onClick が頻繁に呼び出されるため、イベント メソッドが呼び出されるたびに作成される新しいスレッド オブジェクトがメモリ空間やパフォーマンスの問題を引き起こすのではないかと心配しています。
または、次のようなクラス メンバー スレッド ソリューションを作成することもできます。
public class MyService {
private Thread myThread;
//Event method
public void onClick() {
myThread = new Thread(new Runnable() {
@Override
public void run() {
// do some stuff here
}
});
myThread.start();
}
}
では、どのコードが優れているのでしょうか? 1位か2位か?または、他のより良い解決策はありますか?