/// <summary> /// 线程初始化 /// </summary> public CometThread(IChatSessionManager sessionManager) { CometRequestList = new LinkedList<ICometRequest>(); //使用事件驱动 SessionRaisedMode = SessionTriggerMode.EventTrigger; CometChatMessage = new List<ChatMessageModel>(); SessionManager = sessionManager; ChatThread = new Thread(new ThreadStart(CometThreadStart)); ChatThread.IsBackground = false; ChatThread.Start(); }
/// <summary> /// 启动线程池,注册会话处理对象 /// </summary> public static void Start(int threadCount, IChatSessionManager sessionManager) { if (threadCount < MaxThreadCount && threadCount > 0) { ThreadCount = threadCount; } else { ThreadCount = DefaultThreadCount; } CometThreads = new CometThread[ThreadCount]; for (int i = 0; i < ThreadCount; i++) { CometThreads[i] = new CometThread(sessionManager); } }
/// <summary> /// 启动线程池,注册会话处理对象 /// </summary> public static void Start(IChatSessionManager sessionManager) { Start(DefaultThreadCount, sessionManager); }