I tried the same things you tried-- but I wanted to ask just in case there was something I was missing. :)
As for the ExecutorFilter method-- I'm somewhat unclear of the relationship to the Executor used inside NioProcessor and the Executor(s) you can set through the Filter Chain. Does the ExecutorFilter replace the use of the Executor used by NioProcessor? -----Original Message----- From: Christopher Popp [mailto:[email protected]] Sent: Thursday, December 31, 2009 14:52 To: [email protected] Subject: Re: thread naming There isn't an easy way to do it that I could find. The NioSocketAcceptor creates an NioProcessor instance which defers to itssuperclass AbstractPollingIoProcessor for its nextThreadName method to determine the name of the threads. I was going to suggest subclassing NioProcessor and having the NioSocketAcceptor utilize your class (which just implements nextThreadName), but it appears someone decided NioProcessor should be a final class. The nextThreadName method of the AbstractPollingIoProcessor just names the thread based on the class, hence the NioProcessor-#. In the constructor of NioSocketAcceptor, one option is to pass in an instance of an IoAcceptor. So, you might think you could instantiate an NioProcessor, passing an executor that is using a custom implemented ThreadFactory that names threads for you...nope! When the AbstractPollingIoProcessor starts the threads, it renames them, losing whatever your ThreadFactory might've initialized them as. So, maybe someone else sees some options, but since the NioProcessor class is final, it makes it difficult to have a clean solution, without having to duplicate code or modify the mina source. --- If you're looking to rename the threads for the ExecutorFilter, that goes pretty smoothly. Just pass in an OrderedThreadPoolExecutor with a ThreadFactory specified that allows for naming of the threads on creation. Aaron Simmons wrote: >Is it possible to override mina's default thread naming? It defaults to >NioProcessor-1, NioProcessor-2, etc. I'd like to have it be MyCustomString-1, >MyCustomString-2, etc.
