Пример #1
0
        internal async void StopInternal()
        {
            await Task.Run(() => _current.Dispose());

            _current = null;
            OnStopped();
        }
Пример #2
0
        internal async void StartInternal()
        {
            if (_current != null)
            {
                throw new InvalidOperationException();
            }
            TraceClear();
            _current = new RoleRunner(this);
            _current.Start();
            var original = _state;
            await _current.Started;

            if (original == _state)
            {
                Started();
            }
        }