There is only one type of threads in {@link OioDatagramChannelFactory}; worker threads.
Each {@link Channel} has a dedicated worker thread, just like atraditional blocking I/O thread model.
Worker threads are acquired from the {@link Executor} which was specifiedwhen a {@link OioDatagramChannelFactory} was created (i.e. {@code workerExecutor}.) Therefore, you should make sure the specified {@link Executor} is able tolend the sufficient number of threads.
Worker threads are acquired lazily, and then released when there's nothing left to process. All the related resources are also released when the worker threads are released. Therefore, to shut down a service gracefully, you should do the following:
A {@link DatagramChannel} created by this factory does not support asynchronousoperations. Any I/O requests such as {@code "write"} will be performed in ablocking manner. @author The Netty Project (netty-dev@lists.jboss.org) @author Trustin Lee (tlee@redhat.com) @version $Rev: 1029 $, $Date: 2009-03-12 23:48:48 +0900 (Thu, 12 Mar 2009) $ @apiviz.landmark
|
|