私は3つのタスクをAsyncTaskクラス内で実行しています。 3つのAsyncTaskクラスを使用せずに、これらのタスクを並列に実行したい。これは可能ですか?はいの場合、どうすればできますか?下に、私のAsyncTaskクラスとそのdoInBackgroundメソッドのコードスニペットがあります。AsyncTask内でタスクを並行して実行するにはどうすればよいですか?
private class AsyncBenchmarking extends AsyncTask<Void, Void, Integer> {
@Override
protected void onPreExecute() {
lockScreenOrientation();
animateScreen();
super.onPreExecute();
}
@Override
protected Integer doInBackground(Void... params) {
firstTaskPerformance = objPrimeNumber.generatePrimeNumbers();
secondTaskPerformance = objLinpack.linpackBenchmark();
thirdTaskPerformance = objSuperPi.calculatePi(100000);
return;
}
}
'AsyncTask'を使いたくない場合は、' AsyncTask'を取り除き、3つの 'Threads'を使います。 – CommonsWare
'ExecutorService'を使って、あなたのタスク(' Runnable's)を実行してください。それは最高の選択肢です。 – Beloo