threadmain.cpp

来自「在linux下基于UDP通讯的程序,包括客户端与服务端.」· C++ 代码 · 共 42 行

CPP
42
字号
#include "Task.h"
#include "TaskQueue.h"
#include "WorkThreadPool.h"
#include <iostream>
#include <string>
#include "LogHelper.h"
using namespace std;
extern CWorkThreadPool thePool;
extern CTaskQueue theQueue;
extern CLogHelper  theLogger;
extern CTask* pBaseTask;
int main()
{
	int nDeadThreads  = 0;
	int nTotalThreads = 0;
	int nFreeThreads  = 0;
	string strLog;
	InitNetWork();
    theLogger.SetLogFile(LogFile);
	strLog = "##############################主线程启动成功!##################################";
	theLogger.LogMessage(strLog, true);
	do
	{
		char szMsg[256];
		nDeadThreads = thePool.CleanDeadThreads();
		nTotalThreads = thePool.ThreadSize();
		nFreeThreads = thePool.FreeThreads();
		if(nDeadThreads > 0)
		{
			char sz[128];
			sprintf(sz, "结束线程%d个[main()]", nDeadThreads);
			strLog = sz;
			theLogger.LogMessage(strLog, true);
		}
		SLEEP(1, 0);
		
	}while(nTotalThreads > 0);
	string str = "所有线程执行完毕,主线程退出![main]";
	theLogger.LogMessage(str, true);
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?