Kevin Koltzau wrote:
On Tuesday 29 January 2008 11:39:29 pm Yang Zhang wrote:
2. DatagramAcceptor takes an executor - I have never been able to find
any mention in the docs on what exactly gets submitted to this executor
(all I know is that it's not related to IO threads, which is
parameterized by the above int) - but experimentally, I found I cannot
pass in a single-threaded executor, since it seems that the call to
bind() for all but the first DatagramAcceptor will block. And I did not
add any filters.
[snip]
public static void main(String[] args) throws Exception {
InetAddress addr = InetAddress.getLocalHost();
ExecutorService executor = Executors.newSingleThreadExecutor();
for (int i = 0; i < 2; i++) {
DatagramAcceptor a = new DatagramAcceptor(executor);
Move that DatagramAcceptor out of the loop and it works fine
Thanks, that works. However, there still are some number of threads
remaining, including:
PooledByteBufferAllocator
ExpiringMap.Expirer
And I dont suppose MINA has support for the scheduling of tasks I was
asking about?
--
Yang Zhang
http://www.mit.edu/~y_z/