using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tango.MachineStudio.Common.Threading
{
/// <summary>
/// Represents a mechanism for invoking actions on the main application thread.
/// </summary>
public interface IDispatcherProvider
{
/// <summary>
/// Invokes the specified action asynchronously.
/// </summary>
/// <param name="action">The action.</param>
void Invoke(Action action);
/// <summary>
/// Invokes the specified action synchronously.
/// </summary>
/// <param name="action">The action.</param>
void InvokeSync(Action action);
}
}