2
私はタスクの複数のキューを作成し、同時にそれらを異なる遅延時間で実行しようとしていました。基本的には、最初は1つの実行可能オブジェクトしか持たない。Android複数のRunnableオブジェクトを同時に扱う方法
private final Runnable myQueue = new Runnable() {
public void run() {
if (service != null && service.isRunning() && service.queueEmpty()) {
queueTasks();
}
// run again in period defined in preferences
new Handler().postDelayed(myQueue,getUpdatePeriod(prefs));
}
}
private void StartWExecute() {new Handler().post(myQueue);}
は私が複数のキューが存在することになるように、私のコードを改善したい、とすべてのキューが同時に実行を開始するが、各キューは、その中のタスクに応じて異なるupdatePeriodを有することができます。このようにして、タスクをキューに並べ替え、手動で更新速度を制御できます。これをどのように達成するのですか?
ありがとうございました。
1.Declareハンドラ: Handler mWorkerHandler;
2.Createルーパー:あなたは、任意の数のメッセージを送信し、実行することができ
Thread t = new Thread() {
@Override
public void run() {
Looper.prepare();
mWorkerHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
Log.d(TAG, "handleMessage - what = " + msg.what);
}
};
Looper.loop();
}
};
t.start();
3.Nowあなたはメッセージキューを使用する必要がある
クラスを作成するtha 'Handler'を拡張して' handleMessage'をオーバーライドすると、それぞれ異なる遅延/タイミングを持つ 'Handler'クラスの複数のインスタンスを作成することができます。 – pskink
@pskinkこんにちは、ありがとうございます。私は新しくアンドロイドになりました。より具体的になりますか?例を書いてもよろしいですか?ありがとうございました。 – Deidara
[this](http://pastebin.com/pzdH6M4p)のようなものです – pskink