Zlog日志Windows服务程序使用总结
Zlog日志版本选择(zlog介绍链接:http://www.oschina.net/p/zlog)
auto tools版本:https://github.com/bmanojlovic/zlog
cmake版本:https://github.com/lisongm
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
2k累计阅读
2.1k平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄16年
Zlog日志Windows服务程序使用总结
Zlog日志版本选择(zlog介绍链接:http://www.oschina.net/p/zlog)
auto tools版本:https://github.com/bmanojlovic/zlog
cmake版本:https://github.com/lisongm
winzlog用VS2010重新编译的
使用说明: 基于VS2010+win7重新编译了winzlog。(源码见github) 1、将相关文件(xxx.lib,xxx.dll, zlog.h, zlog.conf),直接拷贝到源码目录 2、包含以下预编译指令: #ifdef _DEBUG #ifndef _WIN64 #pragma comment(lib, "zlog_vc100x86.debug.lib") #else #pragma comment(lib, "zlog_vc100x64.debug.lib") #endif #else #ifndef _WIN64 #pragma comment(lib, "zlog_vc100x86.release.lib") #else #pragma comment(lib, "zlog_vc100x64.release.lib") #endif #endif 3、包含头文件zlog.h enjoy it。 备注: 1、(可忽略)在x86平台编译时,使用的是pthreadVSE2.dll,而在x64平台编译时,使用的是pthreadVC2.dll。 2、zlog.conf是zlog的配置文件。具体使用可以参照Zlog UsersGuide-CN.pdf的指导。 3、代码示例: #include "stdafx.h" #include #include "zlog.h" #ifdef _DEBUG #ifndef _WIN64 #pragma comment(lib, "zlog_vc100x86.debug.lib") #else #pragma comment(lib, "zlog_vc100x64.debug.lib") #endif #else #ifndef _WIN64 #pragma comment(lib, "zlog_vc100x86.release.lib") #else #pragma comment(lib, "zlog_vc100x64.release.lib") #endif #endif int main(int argc, char** argv) { int rc = -1; zlog_category_t *zc = NULL; rc = zlog_init(".\\zlog.conf"); if (rc) { printf("init failed\n"); return -1; } zc = zlog_get_category("catc"); if (!zc) { printf("get cat fail\n"); zlog_fini(); return -2; } zlog_info(zc, "hello, zlog"); zlog_fini(); return 0; }
基于开源组件winzlog定制-可动态构建zlog的category
基于开源组件winzlog定制-可动态构建zlog的category 使用场景: 假设server端接收到了不同的client连接,而你需要针对此连接所属uuid分别存储在不同log里面。由于这个过程是动态的,期间可能有若干连接,那您必然没法通过动态修改zlog.conf的方式进行新增或者删除; 基于此目的,定制了zlog的逻辑,将zlog.conf作为基础模板不变且正常加载,通过定制开放的zlog接口动态分配专属于某个uuid(实体)的category 资源介绍: 1. logger是基于定制zlog的单例封装,并集成了一个testcase(testmain函数); 2. winzlog-cat-defined-240717.zip是定制的winzlog源码; 3. ‘’zlog依赖dll‘’文件夹存储了winzlog.dll的依赖组件; 4. testzlog-demo.conf是默认基础zlog模板配置; 5. 理论上实现逻辑可跨平台使用; 基于上述资源,简单构建vs工具,加入logger和winzlog-cat-defined-240717.zip,即可实测效果;
zlog使用手册
zlog使用手册(难易 著)。zlog是一个高可靠性、高性能、线程安全、灵活、概念清晰的纯C日志函数库。事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx)。C程序员都喜欢用自己的轮子。printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件。syslog是个系统级别的轮子,不过速度慢,而且功能比较单调。所以我写了zlog。zlog在效率、功能、安全性上大大超过了log4c,并且是用c写成的,具有比较好的通用性。
zlog windows Linux修改版
zlog windows Linux修改版,同时兼容Linux与Windows
zlog---比log4c更牛的c语言日志库
功能: syslog风格的配置文件,易学易用 可以灵活配置日志输出的格式,类似于log4j的pattern layout 纲目分类模型,比log4j系列的继承模型更加清晰 多种输出,包括动态文件、静态文件、stdout、stderr、syslog 可以在运行时动态刷新配置,只需要调用函数zlog_reload() 高性能,在我的笔记本上达到72'000条日志每秒, 大概是syslog(3)配合rsyslogd的200倍速度 用户可以自定义等级,无需改变库代码 多线程和多进程写同一个日志的情况下,安全转档(转档就是把太大的日志重命名) 可以精确到微秒 如果一个程序默认只用一个分类输出,zlog提供了简单的调用包装dzlog MDC,一个log4j风格的键-值对的表,可以扩展用户自定义的字段 自诊断,可以在运行时输出zlog自己的日志和配置状态 不依赖其他库,只要是个POSIX系统就成
伺服驱动器485控制(1):使用串口软件来读参数
下面介绍如何读伺服驱动器的一圈脉冲数,通过查看伺服驱动器说明书,得知一圈脉冲数的参数是PA11 其通讯地址是十进制 11 十六进制 0A, 串口软件指令都是以十六进制表示,字节单位。注意:485通讯地一定要接,如果不接可能会通讯异常,假如上位机没有485通讯地,而接了两根485+ 和485-,出现通讯不好和反应慢的情况,请把485GND接在上位机0V。笔记本的网口不要和驱动器了网口用网线连接,笔记本网口是以太网,伺服驱动器网口是485。通过驱动器按键面板查看PA11的参数是10000,因此数据对的上。
用PyTorch复现经典:手把手教你用Double DQN训练AI玩转打砖块(附完整代码与调参心得)
本文详细介绍了如何使用PyTorch实现Double DQN算法,训练AI智能体玩转经典雅达利游戏Breakout(打砖块)。从环境配置、帧预处理到网络架构设计和经验回放机制,全面解析了强化学习在游戏AI中的应用。文章还提供了关键调参技巧和实战优化方案,帮助开发者快速掌握Double DQN的核心实现与性能优化方法。
ADS版图优化中的参数化设计技巧
本文详细介绍了在ADS中进行射频电路版图参数化设计的核心技巧。通过将版图关键尺寸定义为变量,并与电磁仿真及优化器联动,实现从手动修改到自动迭代的转变,极大提升了PA、LNA等电路的设计与优化效率。文章以阶梯阻抗变换器为例,阐述了变量创建、绑定及协同仿真的完整流程,并提供了避免网格冲突、变量混乱等常见问题的实用指南。
ChatBI实战:如何用Vanna和WrenAI搭建企业级智能问数系统(附避坑指南)
本文详细介绍了如何利用Vanna和WrenAI搭建企业级智能问数系统(ChatBI),解决多源异构数据整合、语义理解准确率和系统性能安全等核心挑战。通过实战案例和优化策略,展示了这一组合方案在提升查询效率、实现业务自主分析和动态探索式分析方面的显著优势,特别适合企业级数据查询需求。
学Simulink——十二脉波整流电路(移相变压器)谐波抵消仿真
Y:Δ = 1:√3(若 DC 同压)— 此处同相电压故 220V(Y)=220V(Δ phase)Y(相电压=220V)、Δ(线电压=380V ⇒ 相=220V,30° 移相)可经 Lbal=0.5mH(平衡电抗)或直接短(大 L_dc 下均流尚可)✅ 直流输出纹波频率 = 12·f_line(vs 6·f_line)直流输出 → Ldc=50mH→Cdc=2200µF→R=30Ω。Line‑Line RMS = 380 V(⇒ 相=220V)Vdc≈1.35⋅380≈513V(同 6‑脉波)
深入解析 OpenClaw(小龙虾)源码:架构设计与核心实现
OpenClaw用清晰、工程化的代码结构,将复杂的Agent交互流程变成了可管理、可扩展的流水线。无论是想深入了解Agent系统设计,还是希望二次开发定制自己的AI助理,阅读OpenClaw源码都是一次绝佳的学习旅程。希望本文能帮助你快速掌握OpenClaw的核心脉络。如果你对某个模块(如技能开发、安全机制)感兴趣,欢迎继续探讨。本文基于OpenClaw社区版本源码分析,具体实现可能随版本迭代有所调整,请以最新源码为准。
Winform利用动画控制实现各种特效
动画绘制控制类代码 using System; using System.Drawing; using System.Drawing.Drawing2D; using System.Drawing.Imaging; using System.Threading; using System.Windows.Forms; namespace Mengliao.CSharp.A14 { #region 动画类型枚举 // 本例为了简单起见没有使用见名知意的名称,如用于实际可将这些枚举成员更名
Devexpress16.2.6破解工具
Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具
Outlook Express 6 (OE6) for Win7/Win8/Win10
英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。
IDEA的使用指南
IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
5131

被折叠的 条评论
为什么被折叠?



