public void DisconnectCpu(string name) { if (_service.Cpus.ContainsKey(name)) { _logger.Log(new LogEntry(LoggingEventType.Information, $"CpuManager.DisconnectCpu Name={name}")); Cpu cpu = _service.Cpus[name]; if (cpu.IsConnected) { _disconnectWaitHandle = new AutoResetEvent(false); cpu.Disconnect(); _disconnectWaitHandle.WaitOne(1000); _disconnectWaitHandle.Dispose(); _disconnectWaitHandle = null; } _service.Cpus.Remove(cpu.Name); } else { _logger.Log(new LogEntry(LoggingEventType.Information, $"CpuManager.DisconnectCpu Name={name} Not found")); } }
public void DisconnectCpu(CpuInfo info) { if (_service.Cpus.ContainsKey(info.Name)) { Cpu cpu = _service.Cpus[info.Name]; if (cpu.IsConnected) { using (_disconnectWaitHandle = new AutoResetEvent(false)) { cpu.Disconnect(); _disconnectWaitHandle.WaitOne(1000); } } cpu.Removed += Cpu_Removed; cpu.Remove(); } }
public void DisconnectCpu(string name) { if (_service.Cpus.ContainsKey(name)) { _log.Info($"CpuManager.DisconnectCpu Name={name}"); Cpu cpu = _service.Cpus[name]; if (cpu.IsConnected) { cpu.Disconnect(); _service.Cpus.Remove(cpu.Name); } else { _log.Info($"CpuManager.DisconnectCpu Name={name} Not found"); } } }