public void StopSynchronized()
{
Logger.Notice("Component {0} StopSynchronized...", this);
var ElapsedTime = Logger.Measure(() =>
{
if (Running)
{
StopCompleteEvent.Reset();
{
Running = false;
RunningUpdatedEvent.Set();
}
if (!StopCompleteEvent.WaitOne(1000))
{
Logger.Error("Error stopping {0}", this);
ComponentThreadThread.Abort();
}
}
});
Logger.Notice("Stopped! {0}", ElapsedTime);
}