C# Class SpicyPixel.Threading.FiberSchedulerSynchronizationContext

Fiber scheduler synchronization context to support task synchronization across schedulers or other synchronization models.
Inheritance: System.Threading.SynchronizationContext
ファイルを表示 Open project: spicypixel/concurrency-kit-cs Class Usage Examples

Public Methods

Method Description
FiberSchedulerSynchronizationContext ( FiberScheduler scheduler ) : System

Initializes a new instance of the SpicyPixel.Threading.FiberSchedulerSynchronizationContext class.

Post ( SendOrPostCallback d, object state ) : void

Dispatches an asynchronous message to a synchronization context (the FiberScheduler).

The scheduler may choose to inline the callback if the Post is executed from the scheduler thread.

Send ( SendOrPostCallback d, object state ) : void

Dispatches an synchronous message to a synchronization context (the FiberScheduler).

The callback is always inlined if Send is executed from the scheduler thread regardless of any scheduler specific inline settings. Because inlining always occurs when on the scheduler thread, the caller must manage stack depth.

Method Details

FiberSchedulerSynchronizationContext() public method

Initializes a new instance of the SpicyPixel.Threading.FiberSchedulerSynchronizationContext class.
public FiberSchedulerSynchronizationContext ( FiberScheduler scheduler ) : System
scheduler FiberScheduler /// The scheduler to send or post callbacks to. ///
return System

Post() public method

Dispatches an asynchronous message to a synchronization context (the FiberScheduler).
The scheduler may choose to inline the callback if the Post is executed from the scheduler thread.
public Post ( SendOrPostCallback d, object state ) : void
d SendOrPostCallback /// Callback to invoke ///
state object /// State to pass ///
return void

Send() public method

Dispatches an synchronous message to a synchronization context (the FiberScheduler).
The callback is always inlined if Send is executed from the scheduler thread regardless of any scheduler specific inline settings. Because inlining always occurs when on the scheduler thread, the caller must manage stack depth.
public Send ( SendOrPostCallback d, object state ) : void
d SendOrPostCallback /// Callback to invoke ///
state object /// State to pass ///
return void