📄 log.cpp
字号:
#include "stdafx.h"
#include "log.h"
using namespace Utility;
const char* g_unique = "LogMutex";
const char* g_lpszLevel[] = {
"Debug",
"Warning",
"Severe",
"Emergent",
""
};
void CSynLog::Init()
{
m_mutex.SetMutexName(g_unique);
// 如果还没有其他程序打开
if(!m_mutex.IsOpen())
{
m_mutex.acquire();
}
}
void CSynLog::operator()( const char *fmt, ... )
{
CLock<CCriSection> lock(m_CriSec);
if(m_nMaxLine <= m_nCount)
{
m_pLog->DeleteOneLine();
}
// Format string
char buffer[1024*50];
va_list arglist;
va_start( arglist, fmt );
wvsprintf( buffer, fmt, arglist );
va_end(arglist);
// Format time stamp
DWORD x;
char buf[256];
SYSTEMTIME time;
GetLocalTime(&time);
wsprintf( buf, "%02d/%02d/%02d %02d:%02d:%02d Level:%s ",
time.wMonth, time.wDay, time.wYear,
time.wHour, time.wMinute, time.wSecond,g_lpszLevel[m_nLevel]);
string str(buf);
str += (string)buffer;
m_pLog->WriteData(str.c_str());
m_nCount++;
}
CSynLog::~CSynLog()
{
m_mutex.release();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -