Мне кажется, что существует какое-то ограничение в создании сокетов в MIDP. Мне нужно сделать много подключений к серверу (ни один concourrent), а в четвертой или сильной попытке мое приложение выйдет из строя. Он падает в симуляторе и в моем реальном устройстве.Ограниченные розетки для midp?
Чтобы выделить какую-либо возможность его под влиянием моего кода, я выделил следующий код:
try {
StreamConnection c;
StringBuffer sb = new StringBuffer();
c = (StreamConnection) Connector.open(
"http://www.cnn.com.br/", Connector.READ_WRITE);
InputStreamReader r = new InputStreamReader(c.openInputStream(), "UTF-8");
System.out.println(r.read());
c.close();
} catch (IOException ex) {
ex.printStackTrace();
}
Этот код происходит сбой в 13 раза.
Я попытался добавить спать в течение 10 секунд внутри цикла while, и он падает на 13-й попытке тоже.
Сообщения краха:
java.io.IOException: Resource limit exceeded for TCP client sockets
- com.sun.midp.io.j2me.socket.Protocol.open0(), bci=0
- com.sun.midp.io.j2me.socket.Protocol.connect(), bci=124
- com.sun.midp.io.j2me.socket.Protocol.open(), bci=125