private bool TryAddManagedCPU(ICpuSupportingGdb cpu) { if (IsCPUAttached(cpu)) { return(false); } ManagedCpus.Add(cpu.Id + 1, cpu); return(true); }
public void SelectCpuForDebugging(uint cpuNumber) { if (!ManagedCpus.ContainsKey(cpuNumber)) { Logger.Log(LogLevel.Error, "Tried to set invalid CPU number: {0}", cpuNumber); return; } selectedCpuNumber = cpuNumber; }
public void SelectCpuForDebugging(uint cpuNumber) { if (cpuNumber == 0) { // the documentation states that `0` indicates an arbitrary process or thread, so we will take the first one available cpuNumber = ManagedCpus.OrderBy(x => x.Key).First().Key; } else if (!ManagedCpus.ContainsKey(cpuNumber)) { Logger.Log(LogLevel.Error, "Tried to set invalid CPU number: {0}", cpuNumber); return; } selectedCpuNumber = cpuNumber; }
public bool IsCPUAttached(ICpuSupportingGdb cpu) { return(ManagedCpus.ContainsValue(cpu)); }