当前位置: 首页 > news >正文

网站建设面试表做pc网站排名

网站建设面试表,做pc网站排名,网站一键收录,科技类公司名称大全用到前文中的循环队列模板 /* ** File name: LogWriter.h ** Author: ** Date: 2024-11-4 ** Brief: 日志写入类 ** Note: 日志写入类,负责将日志写入文件和连接客户端。 ** Copyright (C) 1392019713qq.com All rights reserve…

用到前文中的循环队列模板

/*
**  File name:   LogWriter.h
**  Author:      
**  Date:        2024-11-4
**  Brief:       日志写入类
**  Note:        日志写入类,负责将日志写入文件和连接客户端。
**  Copyright (C) 1392019713@qq.com All rights reserved.
*/
#pragma once#include "../../Algorithm/Include/LoopQueue.h"
#include "../../System/Include/Singleton.h"
#include "LogStream.h"
#include <string>
#include <thread>class CByteArray
{
public:CByteArray();~CByteArray();public:std::string m_strMsg;
};class CLogWriter
{DECLARE_UNMANGED_SINGLETON_X(CLogWriter)
private:CLogWriter();public:~CLogWriter();bool WriteLog(const CByteArray& rByteArray);void SetRunning(bool bIsRunning);bool IsRunning() const;void StartWriteFileThread();void StartWriteRemoteThread();static void WriteFileThreadFunc(CLogWriter* pLogWriter);static void WriteRemoteThreadFunc(CLogWriter* pLogWriter);private:std::unique_ptr<std::thread> m_pWriteFileThread;CLoopQueue<CByteArray> m_writeFileloopQueue;std::unique_ptr<std::thread> m_pWriteRemoteThread;CLoopQueue<CByteArray> m_writeRemoteloopQueue;bool m_bIsRunning;
};
#include "../Include/LogWriter.h"
#include <fstream>IMPLEMENT_UNMANED_SINGLETON_X(CLogWriter)CByteArray::CByteArray()
{}CByteArray::~CByteArray()
{}/// /CLogWriter::CLogWriter()
{m_bIsRunning = true;m_writeFileloopQueue.Create(100);
}CLogWriter::~CLogWriter()
{m_bIsRunning = false;m_pWriteFileThread->join();//m_pWriteRemoteThread->join();
}bool CLogWriter::WriteLog(const CByteArray& rByteArray)
{bool bRet = m_writeFileloopQueue.EnQueue(rByteArray);if (!bRet){return false;}bRet = m_writeRemoteloopQueue.EnQueue(rByteArray);if (!bRet){return false;}return true;
}void CLogWriter::SetRunning(bool bIsRunning)
{m_bIsRunning = bIsRunning;
}bool CLogWriter::IsRunning() const
{return m_bIsRunning;
}void CLogWriter::StartWriteFileThread()
{m_pWriteFileThread = std::make_unique<std::thread>(&CLogWriter::WriteFileThreadFunc, this);
}void CLogWriter::StartWriteRemoteThread()
{}void CLogWriter::WriteFileThreadFunc(CLogWriter* pLogWriter)
{while (pLogWriter->IsRunning()){if(pLogWriter->m_writeFileloopQueue.GetSize() <= 0){std::this_thread::sleep_for(std::chrono::milliseconds(10));continue;}CByteArray byteArray;if(!pLogWriter->m_writeFileloopQueue.DeQueue(byteArray)){continue;}if (!CLogSystem::Instance().IsSaveToFile()){continue;}//if (std::filesystem::exists(logfilepath))//{//	auto fileSize = GetFileSize(logfilepath);//	if (fileSize > static_cast<size_t>(5 * 1024) * 1024)//	{//		strftime(tdatetime, sizeof(tdatetime), "%Y%m%d%H%M%S", &now_tm);//		auto newlogfilepath = "test.log" + std::string(tdatetime)).u8string();//		std::filesystem::rename(logfilepath, newlogfilepath);//	}//}std::ofstream file(CLogSystem::Instance().GetFileName(), std::ios::app);if (!file.is_open()){pLogWriter->SetRunning(false);break;}file << byteArray.m_strMsg;}
}void CLogWriter::WriteRemoteThreadFunc(CLogWriter* pLogWriter)
{while (pLogWriter->IsRunning()){}
}
http://www.yayakq.cn/news/527370/

相关文章:

  • 个人博客建站wordpress惠州专业做网站
  • 深圳建设工程招投标网站网站官方首页设计
  • 淘宝网站建设违规吗十大seo免费软件
  • 云南响应式网站建设建网站视频教程
  • 网站建站模板样例国内电商平台怎么做
  • 集团公司网站建设策划wordpress 7牛云 配置
  • 免费网页设计制作网站百度外链查询工具
  • 怎么免费上传网页网站麻将棋牌网站开发
  • 做外汇查哪个网站营销型网站建设多少钱
  • 东莞企业建站程序浙江网站建设专家评价
  • 有做外贸个人网站抖音关键词搜索指数
  • 下列不属于网站建设规划综合门户类网站有哪些
  • 网站制作教程切片net网站开发
  • 网站模糊背景计算机专业大学排名
  • 聊城做网站的公司新闻网站手机网站怎么建立
  • 企业网站seo从哪开始公司名称标志设计
  • oa网站建设价格旅游信息管理网站开发文件
  • 城市旅游网站开发关键词优化一年多少钱
  • 沧州网站建设优化案例小广告发布
  • 网站建设营销平台大丰住房和城乡建设局网站
  • 个人网站的制作方法门户网站怎么建设需要多长时间
  • 石河子做网站的公司超级简历免费模板
  • 宜昌哪里做网站巩义网站建设工程
  • 怎么写网站建设方案书python制作网站开发
  • 自己想做一个网站浙江纸巾包装设计公司
  • 寻找南昌网站设计单位自己免费做小程序
  • php mysql网站开发全程实例网页设计入门首先要学什么
  • 关于网站建设的请示范文铜仁市住房和城乡建设部网站
  • 银河麒麟软件下载网站产品网站怎么做
  • 高价词网站源码货代去什么网站开发客户