Nebula2探秘01-创建KernelServer&使用log

本文介绍了Nebula2框架下KernelServer的创建过程及日志系统的使用方法。通过示例代码展示了如何初始化KernelServer,并利用其内置的日志功能记录不同级别的日志信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nebula2探秘01-创建KernelServer&使用log

happykevins文

/**//****************************************************************************/
/**//*Nebula2-Tutorial01*/
/**//*创建KernelServer&使用log*/
/**//*author:happykevins*/
/**//****************************************************************************/

/**////----------------------------------------------------------------------------
///+必要头文件

#include"kernel/nkernelserver.h"
#include
"kernel/nloghandler.h"
#include
"kernel/nwin32loghandler.h"
/**////-必要头文件
///----------------------------------------------------------------------------


///----------------------------------------------------------------------------
///+链接库
///
///@wsock32.lib:nRemoteServer(nIpcServer)所需要的库
///nRemoteServer是对KernelServer进程间控制的接口

#pragmacomment(lib,"wsock32.lib")
/**////
///@d_nkernel.lib:nKernel的静态链接库,Debug版本

#pragmacomment(lib,"d_nkernel.lib")
/**////
///-链接库
///----------------------------------------------------------------------------


///----------------------------------------------------------------------------
///+Application

intmain(intargc,constchar**argv)
...{
/**////----------------------------------------------------------------------------
///+初始化KernelServer
///@note:
///1.虽然KernelServer可以作为Singleton全局访问,然而其生命周期还是需要访问者自己控制.
///2.使用者不必使用nNebulaUsePackage(nkernel)和AddPackage来包含添加包,Nebula2的KernelServer已经
///在创建时自动做好了这些事情.
///3.KernelServer在实例化后会在NOH系统中自动添加4个服务nFileServer2,nPersistServer,nRemoteServer
///和nTimeServer.所以这4个服务是使Nebula2的kernel能够顺利运行所必需的.
///以下是四个Server的NOH路径和用途简介:
///nFileServer2:"/sys/servers/file2"--文件服务
///nPersistServer:"/sys/servers/persist"--对象持久化服务
///nRemoteServer:"/sys/servers/remote"--远程控制服务(依赖ScriptServer)
///nTimeServer:"/sys/servers/time"--时间服务
///

nKernelServernkernel;
/**////-初始化KernelServer
///----------------------------------------------------------------------------

///----------------------------------------------------------------------------
///+使用KernelServer的当前日志系统记录日志
///@note:
///1.在Win32环境下可以使用nwin32loghandler来替代KernelServer默认的loghandler
///可以用KernelServer的SetLogHandler来替换.
///

//以下是对默认log系统的使用范例
nkernel.Print("logcommonmsg! ");
n_printf(
"logcommonmsg! ");
nkernel.Message(
"logimportantmsg! ");
n_message(
"logimportantmsg! ");
nkernel.Error(
"logerrormsg! ");
//n_error("logerrormsg! ");//executingthisline,appwillcrash
nkernel.Print(" PressAnyKey...");
#ifdef__WIN32__
//使用win32loghandler替换掉defaultloghandler
nWin32LogHandler*pWin32LogHandler=n_new(nWin32LogHandler("T01"));
nkernel.SetLogHandler(pWin32LogHandler);
//以下是对Win32log系统的使用范例
n_printf("logcommonmsg! ");
n_message(
"logimportantmsg! ");
n_dbgout(
"logdbgmsg!win32only! ");
//n_error("logerrormsg! ");//executingthisline,appwillcrash
#endif
/**////
///-使用KernelServer的当前日志系统记录日志
///----------------------------------------------------------------------------


getchar();
return0;
}

/**////-Application
///----------------------------------------------------------------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值