zoukankan      html  css  js  c++  java
  • C# 模拟一个处理消息队列的线程类 Message Queue

     1  // 模拟一个处理消息队列的类
     2     class MessageHandler
     3     {
     4         // 消息队列
     5         private Queue<string> messageQue = new Queue<string>();
     6         private Thread th = null;
     7         private bool can = true;
     8 
     9         // 处理消息队列的方法
    10         void HandlerMessage() {
    11             while (can) {
    12                 if (messageQue.Count > 0) {
    13                     Thread.Sleep(1000);
    14                     Console.WriteLine(messageQue.Dequeue());
    15                 }
    16             }
    17         }
    18 
    19         // 向消息队列中增加消息
    20         public void AppendMessage(string message) {
    21             messageQue.Enqueue(message);
    22         }
    23 
    24         // 开始 处理消息的线程
    25         public void Start() {
    26             if (th == null) {
    27                 th = new Thread(HandlerMessage);
    28                 th.Name = "HandlerMessage";
    29             }
    30 
    31             if (!th.IsAlive) {
    32                 th.Start(); 
    33             }
    34         }
    35 
    36         // 结束 处理消息的线程
    37         public void Stop() {
    38             can = false;
    39         }
    40     }
    41 }
  • 相关阅读:
    我的期末可以加分项
    冲刺
    公司授课管理系统
    挑战赛题终于完成
    Java web 学习
    Java web 学习
    Javaweb 学习
    Base64加密
    选课系统
    Educational Codeforces Round 62题解
  • 原文地址:https://www.cnblogs.com/easyfrog/p/3141277.html
Copyright © 2011-2022 走看看