Reduced the GC pressure caused by the Listener. AddSocket/RemoveSocket do their own array doubling, and listen reuses the result and nn_pollfd arrays needed by NN.Poll.
BTW the various tests all seem to lock up at the thread.abort(), except for the listener test which simply goes into a deliberate infinite loop. I have a hacked version of the test code that works around these issues so the test runs to completion, do you want that as well?
If you could do a separate pull request for the problems with the tests, that'd be great. I think even if it's a bit hacky, it'd be better than the current state of affairs ..
Reduced the GC pressure caused by the Listener. AddSocket/RemoveSocket do their own array doubling, and listen reuses the result and nn_pollfd arrays needed by NN.Poll.
BTW the various tests all seem to lock up at the thread.abort(), except for the listener test which simply goes into a deliberate infinite loop. I have a hacked version of the test code that works around these issues so the test runs to completion, do you want that as well?