// Returns the currently selected thread. public override Task <GetSelectedThreadResponse> GetSelectedThread( GetSelectedThreadRequest request, ServerCallContext context) { var sbProcess = GrpcLookupUtils.GetProcess(request.Process, processStore); var sbThread = sbProcess.GetSelectedThread(); var grpcSbThread = new GrpcSbThread(); if (sbThread != null) { var remoteThread = remoteThreadFactory.Create(sbThread); grpcSbThread.Id = threadStore.AddObject(remoteThread); } return(Task.FromResult(new GetSelectedThreadResponse { Thread = grpcSbThread })); }
public RemoteThread GetSelectedThread() { var request = new GetSelectedThreadRequest { Process = grpcSbProcess }; GetSelectedThreadResponse response = null; if (connection.InvokeRpc(() => { response = client.GetSelectedThread(request); })) { return(threadFactory.Create(connection, response.Thread)); } return(null); }