Class DefaultThreadFactory

  • All Implemented Interfaces:
    java.util.concurrent.ThreadFactory, ThreadFactory, ThreadManager
    Direct Known Subclasses:
    LazyThreadFactory

    public class DefaultThreadFactory
    extends java.lang.Object
    implements ThreadFactory, ThreadManager
    Thread factory mainly responsible for naming of threads. Can be replaced by user. If use_numbering is set, a thread THREAD will be called THREAD-1, THREAD-2, and so on.

    If a pattern has been set (through setPattern()), then the cluster name and local address will also be added, e.g. THREAD-5,MyCluster,192.168.1.5:63754 or THREAD,MyCluster,192.168.1.5:63754

    Version:
    $Id: DefaultThreadFactory.java,v 1.3.2.4 2008/05/26 09:14:38 belaban Exp $
    Author:
    Vladimir Blagojevic, Bela Ban
    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultThreadFactory​(java.lang.ThreadGroup group, java.lang.String baseName, boolean createDaemons)  
      DefaultThreadFactory​(java.lang.ThreadGroup group, java.lang.String baseName, boolean createDaemons, boolean use_numbering)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ThreadDecorator getThreadDecorator()
      Gets the ThreadDecorator associated with this manager.
      java.lang.Thread newThread​(java.lang.Runnable r)  
      java.lang.Thread newThread​(java.lang.Runnable r, java.lang.String name)  
      java.lang.Thread newThread​(java.lang.ThreadGroup group, java.lang.Runnable r, java.lang.String name)  
      protected java.lang.Thread newThread​(java.lang.ThreadGroup group, java.lang.Runnable r, java.lang.String name, java.lang.String address, java.lang.String cluster_name)  
      void renameThread​(java.lang.String base_name, java.lang.Thread thread)  
      void renameThread​(java.lang.String base_name, java.lang.Thread thread, java.lang.String address, java.lang.String cluster_name)  
      void renameThread​(java.lang.Thread thread)  
      protected void renameThread​(java.lang.Thread thread, java.lang.String address, java.lang.String cluster_name)  
      void setAddress​(java.lang.String address)  
      void setClusterName​(java.lang.String channelName)  
      void setIncludeClusterName​(boolean includeClusterName)  
      void setPattern​(java.lang.String pattern)  
      void setThreadDecorator​(ThreadDecorator threadDecorator)
      Sets the ThreadDecorator associated this manager should use.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • group

        protected final java.lang.ThreadGroup group
      • baseName

        protected final java.lang.String baseName
      • createDaemons

        protected final boolean createDaemons
      • counter

        protected short counter
      • use_numbering

        protected final boolean use_numbering
      • includeClusterName

        protected boolean includeClusterName
      • includeLocalAddress

        protected boolean includeLocalAddress
      • clusterName

        protected java.lang.String clusterName
      • address

        protected java.lang.String address
    • Constructor Detail

      • DefaultThreadFactory

        public DefaultThreadFactory​(java.lang.ThreadGroup group,
                                    java.lang.String baseName,
                                    boolean createDaemons)
      • DefaultThreadFactory

        public DefaultThreadFactory​(java.lang.ThreadGroup group,
                                    java.lang.String baseName,
                                    boolean createDaemons,
                                    boolean use_numbering)
    • Method Detail

      • setPattern

        public void setPattern​(java.lang.String pattern)
        Specified by:
        setPattern in interface ThreadFactory
      • setClusterName

        public void setClusterName​(java.lang.String channelName)
        Specified by:
        setClusterName in interface ThreadFactory
      • setAddress

        public void setAddress​(java.lang.String address)
        Specified by:
        setAddress in interface ThreadFactory
      • setThreadDecorator

        public void setThreadDecorator​(ThreadDecorator threadDecorator)
        Description copied from interface: ThreadManager
        Sets the ThreadDecorator associated this manager should use.
        Specified by:
        setThreadDecorator in interface ThreadManager
        Parameters:
        threadDecorator - the ThreadDecorator, or null.
      • newThread

        public java.lang.Thread newThread​(java.lang.Runnable r,
                                          java.lang.String name)
        Specified by:
        newThread in interface ThreadFactory
      • newThread

        public java.lang.Thread newThread​(java.lang.Runnable r)
        Specified by:
        newThread in interface java.util.concurrent.ThreadFactory
      • newThread

        public java.lang.Thread newThread​(java.lang.ThreadGroup group,
                                          java.lang.Runnable r,
                                          java.lang.String name)
        Specified by:
        newThread in interface ThreadFactory
      • newThread

        protected java.lang.Thread newThread​(java.lang.ThreadGroup group,
                                             java.lang.Runnable r,
                                             java.lang.String name,
                                             java.lang.String address,
                                             java.lang.String cluster_name)
      • renameThread

        public void renameThread​(java.lang.String base_name,
                                 java.lang.Thread thread)
        Specified by:
        renameThread in interface ThreadFactory
      • renameThread

        public void renameThread​(java.lang.String base_name,
                                 java.lang.Thread thread,
                                 java.lang.String address,
                                 java.lang.String cluster_name)
      • renameThread

        protected void renameThread​(java.lang.Thread thread,
                                    java.lang.String address,
                                    java.lang.String cluster_name)
      • renameThread

        public void renameThread​(java.lang.Thread thread)