/// <summary>
/// Pauses the engine. When paused the engine will not
/// accept any commands (<see cref="ExecuteCommand"/>
/// will throw <see cref="PausedEngineException"/> instead).
///
/// The engine never stops accepting queries.
///
/// The engine will accept commands again after <see cref="Resume"/>.
/// </summary>
public void Pause()
{
if (_paused)
{
return;
}
_clock.Pause();
_paused = true;
}