예제 #1
0
 private void CreateDanmuMonitorImpl()
 {
     _value = new DanmuMonitorImpl(_roomId, _id, _showHeartBeat, _manualCts.Token);
     _value.DanmuHandler += (object sender, DanmuHandlerEventArgs e) => DanmuHandler?.Invoke(sender, e);
     _value.Disposing    += (object sender, EventArgs e) => {
         GlobalSettings.Logger.LogError($"{_id} 号弹幕监控与服务器的连接意外断开,3s后尝试重连");
         Restart(new TimeSpan(0, 0, 3));
     };
 }
예제 #2
0
 /// <summary />
 public void Dispose()
 {
     lock (_syncRoot) {
         if (_isDisposed)
         {
             return;
         }
         _manualCts.Cancel();
         _manualCts.Dispose();
         _value.Dispose();
         _value      = null;
         _isDisposed = true;
     }
 }