public IDisposable Exclusive(int timeoutMS, ILog log) { Pause(timeoutMS, log); return new UndoableAction(delegate { Resume(); }); }