Example #1
0
 /// <summary>
 /// Default copy constructor
 /// </summary>
 /// <param name="b">the object to copy from</param>
 public BaseWorkerThread(BaseWorkerThread b) : base(b)
 {
     lock (b.m_callBackLock)
     {
         m_lifePolicy   = b.m_lifePolicy;
         m_callBackFunc = b.m_callBackFunc;
         m_jobProcessor = b.m_jobProcessor;
         m_workPool     = b.m_workPool;
     }
 }
        /// <summary>
        /// Return the new worker thread object with given life policy.
        /// </summary>
        /// <param name="policy">the life policy of the thread to create.</param>
        /// <returns>the new worker thread object with given life policy.</returns>
        public static BaseWorkerThread GetWorkerThread(ThreadLifePolicy policy = ThreadLifePolicy.INFINITE)
        {
           	if(policy==ThreadLifePolicy.INFINITE)
		        return new WorkerThreadInfinite(policy) as BaseWorkerThread;
	        else if(policy== ThreadLifePolicy.TERMINATE_AFTER_WORK)
		        return new WorkerThreadSingle(policy) as BaseWorkerThread;
	        else if(policy== ThreadLifePolicy.SUSPEND_AFTER_WORK)
		        return new WorkerThreadInfinite(policy) as BaseWorkerThread;
	        else
	        {
                String outputString="Unknown Thread Life Policy Input! Thread Life Policy Input : ";
                outputString+=policy.ToString();
		        Debug.Assert(false,outputString as string);
	        }
	        return null;
        }
 /// <summary>
 /// Return the new worker thread object with given life policy.
 /// </summary>
 /// <param name="policy">the life policy of the thread to create.</param>
 /// <returns>the new worker thread object with given life policy.</returns>
 public static BaseWorkerThread GetWorkerThread(ThreadLifePolicy policy = ThreadLifePolicy.INFINITE)
 {
     if (policy == ThreadLifePolicy.INFINITE)
     {
         return(new WorkerThreadInfinite(policy) as BaseWorkerThread);
     }
     else if (policy == ThreadLifePolicy.TERMINATE_AFTER_WORK)
     {
         return(new WorkerThreadSingle(policy) as BaseWorkerThread);
     }
     else if (policy == ThreadLifePolicy.SUSPEND_AFTER_WORK)
     {
         return(new WorkerThreadInfinite(policy) as BaseWorkerThread);
     }
     else
     {
         String outputString = "Unknown Thread Life Policy Input! Thread Life Policy Input : ";
         outputString += policy.ToString();
         Debug.Assert(false, outputString as string);
     }
     return(null);
 }
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="policy">the life policy of this worker thread.</param>
        public BaseWorkerThread(ThreadLifePolicy policy):base()
        {
            m_lifePolicy=policy;
            m_callBackFunc = null;

        }
Example #5
0
 /// <summary>
 /// Default Constructor
 /// </summary>
 /// <param name="policy">the life policy of this worker thread.</param>
 public WorkerThreadSingle(ThreadLifePolicy policy) : base(policy)
 {
 }
 /// <summary>
 /// Default Constructor
 /// </summary>
 /// <param name="policy">the life policy of this worker thread.</param>
 public WorkerThreadInfinite(ThreadLifePolicy policy):base(policy)
 {
     m_terminateEvent=new EventEx(false,EventResetMode.AutoReset);
 }
Example #7
0
 /// <summary>
 /// Default Constructor
 /// </summary>
 /// <param name="policy">the life policy of this worker thread.</param>
 public WorkerThreadInfinite(ThreadLifePolicy policy) : base(policy)
 {
     m_terminateEvent = new EventEx(false, EventResetMode.AutoReset);
 }
Example #8
0
 /// <summary>
 /// Default Constructor
 /// </summary>
 /// <param name="policy">the life policy of this worker thread.</param>
 public BaseWorkerThread(ThreadLifePolicy policy) : base()
 {
     m_lifePolicy   = policy;
     m_callBackFunc = null;
 }
Example #9
0
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="policy">the life policy of this worker thread.</param>
        public BaseWorkerThread(ThreadLifePolicy policy):base(ThreadPriority.Normal)
        {
            m_lifePolicy=policy;
            m_callBackFunc = null;

        }
Example #10
0
        /// <summary>
        /// Default copy constructor
        /// </summary>
        /// <param name="b">the object to copy from</param>
		public BaseWorkerThread(BaseWorkerThread b):base(b)
        {
            lock(b.m_callBackLock)
            {
                m_lifePolicy=b.m_lifePolicy;
                m_callBackFunc = b.m_callBackFunc;
	            m_jobProcessor=b.m_jobProcessor;
	            m_workPool=b.m_workPool;
            }
            
        }
Example #11
0
 /// <summary>
 /// Default Constructor
 /// </summary>
 /// <param name="policy">the life policy of this worker thread.</param>
 public BaseWorkerThread(ThreadLifePolicy policy) : base(ThreadPriority.Normal)
 {
     m_lifePolicy   = policy;
     m_callBackFunc = null;
 }
        /// <summary>
        /// Default Constructor
        /// </summary>
        /// <param name="policy">the life policy of this worker thread.</param>
        public WorkerThreadSingle(ThreadLifePolicy policy):base(policy)
		{}