ACE日志系统之本机日志系统的多文件实现

在文章<<ACE日志系统之C/S模式配置文件详解>>(http://blog.csdn.net/arose616725/article/details/7767915)中讲到C/S模式能支持日志文件的多文件化, ACE能不能仿造C/S模式实现本机日志的多文件化呢? 通过测试验证,是可行的! 测试程序代码如下:

#include "ace/Logging_Strategy.h"
#include "ace/argv.h"
#include "ace/Reactor.h"
#include "ace/Task.h"

class CMyTask : public ACE_Task<ACE_NULL_SYNCH>
{
public:
	void start()
	{
		activate();
	}


	int svc()
	{
		for (int i = 0; i < 10000; i++)
		{
			ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("测试日志:%d\n"), i));
			Sleep(1000);
		}


		return 0;
	}
};

int main(int argc, char* argv[])
{
        //日志策略类 通过定时器实时检查日志文件大小 以实现分割日志
	ACE_Logging_Strategy logStrategy;
	logStrategy.log_msg(ACE_LOG_MSG);

	//ACE_ARGV如下的构造函数参数为server.conf的日志策略参数 详见server.conf说明
	ACE_ARGV logArg("-s d:/log.txt -f STDERR|OSTREAM|VERBOSE -i 1 -m 1 -N 10");
	logStrategy.init(logArg.argc(), logArg.argv());

	//模拟日志输出
	CMyTask myTask;
	myTask.start();

	//由于用到了定时器反应器 所以...
	ACE_Reactor::instance ()->run_reactor_event_loop ();
 
	return 0;
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值