public IHttpActionResult UpdatePatientStatus([FromBody] PatientQueueModel patient) { var response = service.UpdatePatientStatus(patient); IBaiduTTSService baiduService = IOCContainer.Instance.Resolve <IBaiduTTSService>(); var ctx = GlobalHost.ConnectionManager.GetHubContext <ScreenDisplayHub>(); var dbPatient = service.GetCheckRoomName(patient); if (dbPatient == null) { dbPatient = patient; } var broadcartContent = "请 " + dbPatient.SerialNumber + "号 " + dbPatient.ResidentName + "到" + dbPatient.DeptName + dbPatient.CheckRoomName + "诊室就诊!"; var url = baiduService.GetBaiduUri(broadcartContent); //入列: PersonQueue Model = new PersonQueue(broadcartContent, url); PersonEnqueue(Model); //ctx.Clients.Group("12345678").clientAddGroupMessage(broadcartContent, url); return(Ok(response)); }
static void Main(string[] args) { Log.WriteLine("Start"); var queue = new PersonQueue(new QueueUow()); queue.ReadQueue((person) => { Log.WriteLine(person.SeyHello()); Task.Delay(300).Wait(); }); Log.WriteLine("Stop"); }
static void Main(string[] args) { Log.WriteLine("Start"); var queue = new PersonQueue(new QueueUow()); queue.KeepListening((person) => { Log.WriteLine(person.SeyHello()); Task.Delay(300).Wait(); }); Log.WriteLine(" Press [enter] to exit."); Console.ReadLine(); }
static void Main(string[] args) { Log.WriteLine("Start"); QueueUow uow = new QueueUow(); var personQueueWithDeadLetter = new PersonDeadLetterQueue(uow); Log.WriteLine("..:: Generating world ::.."); for (int i = 0; i < 100; i++) { var newPerson = new Person() { Age = i, Name = NameGenerator.Generate() }; Log.WriteLine($"..:: Sending {newPerson.Name} to World! ::.."); personQueueWithDeadLetter.Push(newPerson); } Log.WriteLine("..:: World is full of peoples ::.."); Log.WriteLine("..."); var personQueue = new PersonQueue(uow); Log.WriteLine("..:: Game Start ::.."); personQueueWithDeadLetter.ReadQueue((person) => { Log.WriteLine("..."); Log.WriteLine("-Shhh, there's someone comming..."); Task.Delay(500).Wait(); RollTheDice(); Log.WriteLine(person.SeyHello()); personQueue.Push(person); }); Log.WriteLine("Stop"); }
static void Main(string[] args) { Log.WriteLine("Start"); var queue = new PersonQueue(new QueueUow()); { for (int i = 0; i < 1000; i++) { string message = $"I'm number {i}"; Log.WriteLine($"pushing: '{message}'"); queue.Push(new Core.Entities.Person() { Age = i, Name = "Mr Jhon" }); } } Log.WriteLine("Stop"); Log.WriteLine("..."); Console.ReadKey(); }
/// <summary> /// 入队 /// </summary> public void PersonEnqueue(PersonQueue Model) { _ConcurrenPersons.Enqueue(Model); }