Hi There,
I have an application that can do about 20 simultanious socket
connections to a http server.
I handle the http stuff myself. This works fine for a while, but then I
get these exceptions:
27286 java.net.SocketException: Too many open files
27287 at sun.nio.ch.Net.socket0(Native Method)
27288 at sun.nio.ch.Net.socket(Net.java:94)
27289 at
sun.nio.ch.SocketChannelImpl.<init>(SocketChannelImpl.java:84)
27290 at
sun.nio.ch.SelectorProviderImpl.openSocketChannel(SelectorProviderImpl.java:37)
27291 at
java.nio.channels.SocketChannel.open(SocketChannel.java:105)
27292 at
org.xsocket.connection.spi.DefaultIoProvider.openSocket(DefaultIoProvider.java:522)
27293 at
org.xsocket.connection.spi.DefaultIoProvider.createClientIoHandler(DefaultIoProvider.java:358)
27294 at
org.xsocket.connection.NonBlockingConnection.createClientIoHandler(NonBlockingConnection.java:1181)
27295 at
org.xsocket.connection.NonBlockingConnection.<init>(NonBlockingConnection.java:522)
27296 at
org.xsocket.connection.NonBlockingConnection.<init>(NonBlockingConnection.java:510)
27297 at
org.xsocket.connection.NonBlockingConnection.<init>(NonBlockingConnection.java:326)
27298 at
com.technocon.controlserver.util.location.Map24LocationProviderHTTP.getLocation(Map24LocationProviderHTTP.java:86)
27299 at
com.technocon.controlserver.backend.udpserver.events.Logpoint.readData(Logpoint.java:83)
27300 at
com.technocon.controlserver.backend.udpserver.events.Logpoint.<init>(Logpoint.java:50)
27301 at
com.technocon.controlserver.backend.udpserver.UDPEventFactory.composeEvent(UDPEventFactory.java:61)
27302 at
com.technocon.controlserver.backend.udpserver.DatagramPackets.extractPackets(DatagramPackets.java:58)
27303 at
com.technocon.controlserver.backend.udpserver.DatagramPackets.<init>(DatagramPackets.java:39)
27304 at
com.technocon.controlserver.backend.udpserver.UDPBackend.onDatagram(UDPBackend.java:212)
27305 at
org.xsocket.datagram.AbstractEndpoint$HandlerProcessor.run(AbstractEndpoint.java:329)
27306 at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
27307 at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
27308 at java.lang.Thread.run(Thread.java:619)
I have no clue why this happens, since there are by for not enough
sockets in use to be able to account for this error
I'm using JDK 6.0 and xsocket 2.0
--
Christiaan Willemsen
|