У меня есть основной вопрос об асинхронной задаче. Я новичок в программировании для Android, извините за этот вопрос.
Я собираюсь открыть сокет в doinbackground.
doInBackground(... ) {
Socket socket = null;
DataOutputStream dataOutputStream = null;
DataInputStream dataInputStream = null;
try {
socket = new Socket(192.168.0.1, 2000);
dataOutputStream = new DataOutputStream(socket.getOutputStream());
dataInputStream = new DataInputStream(socket.getInputStream());
}}
Что происходит с сокетом после завершения AsyncTask? (Как только doInBackground и OnPostExecute прошли.)
Сокет еще доступен? Или он будет удален сборщиком мусора?
Следующий вопрос, но на самом деле тот же фон.
Что происходит с экземпляром класса, который я создаю в doInBackground после завершения AsyncTask? (Как только doInBackground и OnPostExecute прошли.)
doInBackground(... ) {
IPConnection ipcon = new IPConnection();
}
----------------------------------------------------------------------------- ----------------------
Изменить:
Как я могу создать ссылку из объекта в Asynctask на MainActivity?
Изменить2:
Это отсылка к основной теме? Не будут ли объекты удалены сборщиком мусора в этом примере кода?
public class ClientActivity extends Activity {
private IPConnection ipcon;
private Socket Testsocket;
public class IPConnection extends AsyncTask<String, String, IPConnection> {
@Override
protected IPConnection doInBackground(String... message) {
ipcon = new IPConnection();
ipcon.run();
return null;
}
}
}
Заранее спасибо.