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

提示网站正在建设中wordpress 手机版插件

提示网站正在建设中,wordpress 手机版插件,广州工商注册名字查询,win7优化配置的方法目录 一、描述 二、实现效果 三、使用案例 四、内存检测 一、描述 最近实现一个 WS 服务器#xff0c;内部需要一个日志打印记录服务器程序的运行过程#xff0c;故自己实现了一个轻量级的 logger#xff0c;主要包含如下特征#xff1a; 可输出 debug、info、warn、er…目录 一、描述 二、实现效果 三、使用案例 四、内存检测 一、描述 最近实现一个 WS 服务器内部需要一个日志打印记录服务器程序的运行过程故自己实现了一个轻量级的 logger主要包含如下特征 可输出 debug、info、warn、error、fatal 级别日志 每行日志包含时间戳、进程号、线程号、文件名、函数、行数、日志级别等重要信息 可按日志文件大小自动拆分日志文件以 MB 为单位 可限制日志文件数量自动覆盖旧的日志文件 日志文件命名可设置固定开头以时间戳进行区分 线程安全可多线程读写 通过宏参数控制日志行为 具体的代码已上传至 gitcode和github链接如下 项目首页 - GitCode ​​​​​​AtaoistPriest/c_logger: A Lightweight Logger Implemented with C (github.com) 二、实现效果 主要打印时间戳、进程号、线程号、文件名、函数、行数、日志级别和错误描述等重要信息。 May 21 2024 23:45:01 [1661][1663] [./test.c print_log:19] [ERROR] this an error thread 2 54246 May 21 2024 23:45:01 [1661][1663] [./test.c print_log:20] [ERROR] this an error thread 2 54246 May 21 2024 23:45:01 [1661][1663] [./test.c print_log:13] [INFO] this an info thread 2 54247 May 21 2024 23:45:01 [1661][1663] [./test.c print_log:14] [INFO] this an info thread 2 54247 May 21 2024 23:45:01 [1661][1663] [./test.c print_log:16] [WARN] this an warn thread 2 54247 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:13] [INFO] this an info thread 1 59045 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:14] [INFO] this an info thread 1 59045 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:16] [WARN] this an warn thread 1 59045 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:17] [WARN] this an warn thread 1 59045 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:19] [ERROR] this an error thread 1 59045 May 21 2024 23:45:01 [1661][1662] [./test.c print_log:20] [ERROR] this an error thread 1 59045 三、使用案例 #include unistd.h #include pthread.h #include ./logger.hvoid *print_log(void *arg) {char *str (char *)arg;for ( int i 0; i 100000; i ){logger_level_printf(LOGGER_DEBUG_LEVEL, this an debug %s %d, str, 525 i);logger_level_printf(LOGGER_INFO_LEVEL, this an info %s %d, str, 525 i);logger_level_printf(LOGGER_WARN_LEVEL, this an warn %s %d, str, 525 i);logger_level_printf(LOGGER_ERROR_LEVEL, this an error %s %d, str, 525 i);if ( i % 10000 0 ){sleep(1);}}return NULL; }int main(void) {logger_init(./log);pthread_t tid1, tid2;pthread_create(tid1, NULL, print_log, thread 1);pthread_create(tid2, NULL, print_log, thread 2);pthread_join(tid1, NULL);pthread_join(tid2, NULL);logger_destroy();return 0; } 四、内存检测 使用 valgrind 对该日志器进行了内存泄漏检测检测结果如下没有任何问题。 14863 Memcheck, a memory error detector 14863 Copyright (C) 2002-2024, and GNU GPLd, by Julian Seward et al. 14863 Using Valgrind-3.23.0 and LibVEX; rerun with -h for copyright info 14863 Command: ./test 14863 Parent PID: 10266 14863 14863 14863 HEAP SUMMARY: 14863 in use at exit: 0 bytes in 0 blocks 14863 total heap usage: 27 allocs, 27 frees, 368,920 bytes allocated 14863 14863 All heap blocks were freed -- no leaks are possible 14863 14863 For lists of detected and suppressed errors, rerun with: -s 14863 ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) valgrind是一个开源的检测内存泄漏的工具通常在linux下使用除此之外他还能检测内存管理错误线程bug等错误。valgrind相当于一个沙盒指定的程序会在他模拟的cpu和内核中去运行。 粗浅的来讲valgrind由两部分构成一部分用来模拟cpu和内核被称为framework框架一部分是他用来检测各种错误信息的插件工具。其中的插件包括 memcheck是valgrind最重要的工具之一是一个重量级的内存检查器它可以帮我们检测是否有使用未初始化的内存,以及内存泄漏访问越界之类的问题。 callgrind可以用来统计函数的互相调用情况。可以用来统计某个函数被调用了几次以及他们的调用关系。 cachegrindcache分析器可以精准的指出cache的丢失与命中。还可以统计cache命中与丢失的次数让我们了解我们程序堆栈的使用情况。 helgrind主要用来检测线程资源的竞争问题比如 POSIX pthreads API 的误用。由锁排序导致的死锁。以及数据的竞争问题等。 massif堆栈分析器。它可以统计堆和栈使用的内存大小是多少。 extension可以利用core的特性自己编辑的内存调试工具。 valgrind --toolmemcheck --leak-checkfull --show-reachableyes --log-filecheck.log ./host_monitor 在程序执行结束后valgrind 将打印检测结果。 valgrind 将内存泄漏分为 4 类并且默认情况下只会打印明确泄漏 和可能泄漏如果需要打印 间接泄漏需要加上选项 --show-reachableyes. a. 明确泄漏definitely lost表示某段内存还没有被释放但是已经没有指针指向它了所以明确了这里一定发生了内存释放。 b. 间接泄漏indirectly lost某一段内存没有被释放指向它的指针仍然存在但是存放这个指针的内存已经被释放了。 c. 可能泄漏possibly lost指针存在但并不指向内存头地址而是指向内存内部的位置。 d. 仍可访达still reachable指针一直存在并指向首地址直至程序退出时内存还没被释放。例如指针 ptrmalloc() 了一段内存直至程序结束ptr仍然指向malloc分配的内存的首地址并且该内存仍然没有没释放。
http://www.w-s-a.com/news/193388/

相关文章:

  • 网站开发合同付款比例wordpress调用指定文章内容
  • 湖北平台网站建设哪里好辽宁建设工程信息网官网平台
  • 公司优化是什么意思?洛阳seo博客
  • 普通建站网站首页制作模板
  • 江苏城乡与住房建设厅网站wordpress 添加导航
  • 免费单页网站在线制作网站制作与网站建设pdf
  • 网站开发使用云数据库技术教程大连模板开发建站
  • 佘山网站建设创造网站需要多少钱
  • 南海佛山网站建设网站维护需要什么技能
  • 阿里云服务器开源做几个网站想找公司做网站
  • 一般做网站是用什么语言开发的域名查询 查询网
  • 地方门户网站源码下载揭阳专业网站建设
  • 网站做优化好还是推广好wordpress百家号模版
  • 淘宝网网站建设的的意见校园微网站建设
  • 小说网站建设之前需求分析免费下载京东购物
  • 园林景观设计案例网站wordpress 文章内容页
  • 网站什么做才会更吸引客户楚雄网站开发rewlkj
  • 电商网站构建预算方案视频制作网站怎么做
  • 包装设计灵感网站ps软件下载电脑版多少钱
  • 手机网站图片做多大原网站开发新功能
  • 网站设计培训成都陕西网站建设公司哪有
  • expedia电子商务网站建设辽宁网站设计
  • 深圳网站建设网站运营绥芬河市建设局网站
  • 家政服务网站做推广有效果吗做图软件ps下载网站有哪些
  • 北京市建设教育协会网站flash网站制作单选框和复选框ui组件
  • 国外有没有做问卷调查的网站网站网页怎么做
  • 简单个人网站模板下载网站建设整体情况介绍
  • 网站建设做到哪些内容荆门网站建设电话咨询
  • 玉树网站建设公司双11主机 wordpress 2015
  • dw做网站背景图片设置汕头seo管理