Imports System.Threading

Namespace Threading

    ''' <summary>
    ''' An interface for implementing custom synchronization contexts on various platforms.
    ''' </summary>
    ''' <remarks></remarks>
    Public Interface ISynchronizationContext

        ''' <summary>
        ''' Dispatches an asynchronous message to a synchronization context.
        ''' </summary>
        ''' <param name="d">The delegate to call.</param>
        ''' <param name="state">The object passed to the delegate.</param>
        ''' <remarks></remarks>
        Sub Post(ByVal d As ContextSendOrPostCallback, ByVal state As Object)

        ''' <summary>
        ''' Dispatches a synchronous message to a synchronization context.
        ''' </summary>
        ''' <param name="d">The delegate to call.</param>
        ''' <param name="state">The object passed to the delegate.</param>
        ''' <remarks></remarks>
        Sub Send(ByVal d As ContextSendOrPostCallback, ByVal state As Object)

    End Interface

End Namespace