Я хочу открыть для себя свою локальную сеть, и мне нужно выполнить ping всех клиентов! что это требует времени! поэтому я хочу запустить процесс pinging в нескольких потоках, чтобы сделать это быстрее; и это моя попытка:, выполняющий метод асинхронно
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// For example
// host = "192.168.1.";
for (int i = 1; i < 255; i++) {
String ip = host + i;
new Pinging().execute(ip);
}
}
private class Pinging extends AsyncTask<String, String, Void> {
@Override
protected Void doInBackground(String... params) {
String ipAddress = params[0];
Log.d("test", "Pingng " + ipAddress);
// Ping method
return null;
}
}
Я ожидаю, что 254 потока были сделаны и выполняют свою работу асинхронно!
Но, к сожалению, команды петли for
занимают ~ 254 * 3 секунды.
В чем моя ошибка?