Click or drag to resize
CMSThread Class
Wrapper class for Thread object with additional debug, log and context item possibilities.
Inheritance Hierarchy

Namespace: CMS.Base
Assembly: CMS.Base (in CMS.Base.dll) Version: 12.0.0
Syntax
C#
public sealed class CMSThread : AbstractWorker

The CMSThread type exposes the following members.

Constructors
  NameDescription
Public methodCMSThread(ThreadStart, ThreadSettings)
Creates new instance of CMSThread.
Public methodCMSThread(ThreadStart, Boolean, ThreadModeEnum)
Creates new instance of CMSThread.
Top
Fields
  NameDescription
Public fieldStatic memberABORT_REASON_STOP
Thread was stopped by the user.
Top
Properties
  NameDescription
Public propertyAllowAsyncActions
Indicates if new threads can be created within this thread. (By default no new threads are created.)
Public propertyConnectionString
Connection string name that the thread should use to access the database
Public propertyIsBackground
Defines if a thread is a background thread
Public propertyLog
Logs for long running operations.
Public propertyMode
If true, the thread runs synchronously
Public propertyPriority
Specifies the scheduling priority.
Public propertyRunInSequence
If true, the thread is a part of the sequence and should perform the actions after the previous thread finishes.
(Inherited from AbstractWorker.)
Public propertyStatic memberRunningThreads
Counter of running Threads.
Public propertyThreadFinished
Time when the thread finished.
Public propertyThreadGUID
Thread GUID.
Public propertyThreadID
Thread ID.
Public propertyThreadStarted
Time when the thread started.
Top
Methods
  NameDescription
Public methodAbort
Raises a ThreadAbortException in the thread on which it is invoked, to begin the process of terminating the thread. Calling this method usually terminates the thread.
Public methodStatic memberAllowEmptyContext
Allows anonymous thread to use new dedicated context in subsequent calls. Call this method in case the anonymous thread isn't initiated from a request thread, or in case you want to start with an empty thread context on purpose.
Public methodStatic memberGetCurrentThreadId
Gets the current thread ID
Public methodStatic memberGetThread
Finds the thread based on the given GUID.
Public methodJoin
Blocks the calling thread until a thread terminates, while continuing to perform standard COM and SendMessage pumping.
Public methodLoadTargetDelegateInfo
Sets the target delegate information
Protected methodRaiseStop
Raises OnStop event.
(Inherited from AbstractWorker.)
Public methodRun
Runs the action.
(Overrides AbstractWorkerRun.)
Public methodRunAsync
Runs the worker as a new thread. For internal purposes only, use method Start instead.
(Overrides AbstractWorkerRunAsync.)
Public methodStart
Starts the thread.
Public methodStop
Stops the thread execution.
Public methodStatic memberStopped
Returns true if thread was aborted with ABORT_REASON_STOP state info e.g. Thread.Abort(CMSThread.ABORT_REASON_STOP);
Public methodStatic memberWrap(Action, Boolean)
Wraps the given method into CMSThread context
Public methodStatic memberWrapT(ActionT, Boolean)
Wraps the given method into CMSThread context
Public methodStatic memberWrapT1, T2(ActionT1, T2, Boolean)
Wraps the given method into CMSThread context
Public methodStatic memberWrapFuncTResult(FuncTResult, Boolean)
Wraps the given method into CMSThread context
Public methodStatic memberWrapFuncT1, TResult(FuncT1, TResult, Boolean)
Wraps the given method into CMSThread context
Top
Events
  NameDescription
Public eventOnStop
Raised when worker finishes.
(Inherited from AbstractWorker.)
Top
Remarks
CMSThread is able to copy context items from thread where the instance of CMSThread was created. Context items are based on AbstractContextTContext class.
See Also