![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 50
caoli98033
这个作者很懒,什么都没留下…
展开
-
LeakTracer-内存泄露检测工具
LeakTracer-Linux、Solaris和HP-UX下跟踪和分析C++程序中的内存泄漏。推荐到LeakTracer的github上去看看,连接是https://github.com/fredericgermain/LeakTracer1.有3种方法可以加载libleaktracer (1)Link your program with libleaktracer.a,加转载 2015-03-16 22:29:52 · 2565 阅读 · 0 评论 -
Linux sigsuspend与sigprocmask使用详解
1.sigsuspend()函数作用详解一个错误示例:参考APUE中的代码:1)头文件:#include 2)一个保护临界区代码的错误实例:(sigprocmask()和pause()实现)#include #include #include void handler(int sig) //信号处理函数的实现{ printf("SIGINT原创 2015-03-24 13:19:54 · 3524 阅读 · 2 评论 -
(转)Linux sigprocmask
功能描述:设定对信号屏蔽集内的信号的处理方式(阻塞或不阻塞)。用法:#include int sigprocmask(int how, const sigset_t *set, sigset_t *oldset);参数:how:用于指定信号修改的方式,可能选择有三种SIG_BLOCK //加入信号到进程屏蔽。SIG_UNBLOCK //从进程屏蔽里将信号删除。S转载 2015-03-24 10:32:59 · 893 阅读 · 0 评论 -
(转)Linux epoll
1.什么是epollepoll是当前在Linux下开发大规模并发网络程序的热门人选,epoll 在Linux2.6内核中正式引入,和select相似,都是I/O多路复用(IO multiplexing)技术,按照man手册的说法:是为处理大批量句柄而作了改进的poll。Linux下有以下几个经典的服务器模型: ①Apache模型(Process Per Connection,简称P转载 2015-03-23 23:29:06 · 338 阅读 · 0 评论 -
nginx源码剖析-红黑树ngx_rbtree_t(添加lookup操作)
前一篇转自他人的rbtree结构分析,但是前一篇只有init、insert、delete操作,没有介绍lookup操作。所以在此添加lookup操作介绍。依然借用nginx源码,源码文件名为ngx_resolver.c。1. init操作:ngx_rbtree_init(&r->addr_rbtree, &r->addr_sentinel,原创 2015-03-22 10:10:17 · 992 阅读 · 0 评论 -
(转)nginx源码剖析-红黑树ngx_rbtree_t
转自http://blog.csdn.net/chen19870707/article/details/405152871.ngx_rbtree优势和特点 ngx_rbtree是一种使用红黑树实现的关联容器,关于红黑树的特性,在《手把手实现红黑树》已经详细介绍,这里就只探讨ngx_rbtree与众不同的地方;ngx_rbtree红黑树容器中的元素都是有序的,支持快速转载 2015-03-21 23:12:24 · 604 阅读 · 0 评论 -
(转)Linux进程间通信——使用共享内存
一、什么是共享内存顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一样。而如果某个进程向共享内存写入数据,所做的改动将立即影转载 2015-03-17 20:28:12 · 342 阅读 · 0 评论 -
(转)Linux进程间通信——使用信号量
这篇文章将讲述别一种进程间通信的机制——信号量。注意请不要把它与之前所说的信号混淆起来,信号与信号量是不同的两种事物。有关信号的更多内容,可以阅读我的另一篇文章:Linux进程间通信——使用信号。下面就进入信号量的讲解。一、什么是信号量为了防止出现因多个程序同时访问一个共享资源而引发的一系列问题,我们需要一种方法,它可以通过生成并使用令牌来授权,在任一时刻只能有一个执行转载 2015-03-17 20:29:26 · 351 阅读 · 0 评论 -
(转)使用 Boost 的 IPC
使用非常流行的 Boost 库进行并发编程非常有意思。Boost 有几个用于并发编程领域的库:Interprocess (IPC) 库用于实现共享内存、内存映射的 I/O 和消息队列;Thread 库用于实现可移植的多线程;Message Passing Interface (MPI) 库用于分布式计算中的消息传递;Asio 库用于使用套接字和其他低层功能实现可移植的连网功能。本文介绍 IPC 和转载 2015-03-20 16:59:17 · 2481 阅读 · 0 评论 -
如何提高C++的编译速度
用C++开发的人都知道,C++的编译速度比较慢,为什么比较慢,有一个原因是因为C++编译时,会把include里面的文件全部都编译进来,如果能想办法减少include的文件,那么就可以提高编译速度了。那么问题就来了,在一个文件中要使用一个class,至少要让编译器知道有这个class啊,不include怎么办,其实可以使用前置申明的方法。示例如下:设计一个杯子的类Cupclass原创 2017-06-11 11:06:48 · 5564 阅读 · 0 评论