-
- Downloads
refactored packet handling into type specific methods
removed nested synchronization (which had been causing undetected deadlocks) made sync blocks smaller, though this may have opened holes related to resent ACK/SYN/CLOSE packets that are delivered in a race. I'm not as fluent in the ministreaming lib code as i should be (yet), but duck's thread dumps were showing hundreds of threads waiting on a lock that'll never get released (since the only way to release it would be to receive another packet, and no more packets can be received until the lock is released, etc) also, I2PSession is threadsafe - i can see no reason to synchronize on it (and it was being synchronized on only part of the time?) also, refactored the charset encoding stuff and minor log tweaking i've been testing this for the last hour or so, on eepsites and squid (large and small files), as well as irc, and there haven't been any glitches. but it needs more testing before it can be released, obviously.
Showing
- apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketImpl.java 77 additions, 54 deletions...ming/java/src/net/i2p/client/streaming/I2PSocketImpl.java
- apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManager.java 311 additions, 184 deletions...g/java/src/net/i2p/client/streaming/I2PSocketManager.java
Loading
Please register or sign in to comment