using System; namespace Quadarax.Foundation.Core.Thread { public interface IWorker : IDisposable { bool IsRunning { get; } bool IsTransient { get; } string Name { get; } TimeSpan Timeout { get; } void Start(bool silentlyIfNotValidState = false); void Start(TimeSpan runDelay,bool silentlyIfNotValidState = false); void Stop(bool silentlyIfNotValidState = false); } }