01 2018 档案

摘要:epoll的触发方式有水平触发以及边缘触发。 水平触发相当于高级的select,当可读或可写时就会触发。比如将fd设为可读并交给epoll,只要fd有数据可读都会触发 边缘触发是在由不可读变为可读一瞬间触发一次。 为什么需要将socketfd设为非阻塞呢? 因为如果一个客户端连接的socketfd连 阅读全文
posted @ 2018-01-29 15:54 _离水的鱼 阅读(307) 评论(0) 推荐(0)
摘要:在结构体内定义位,节省空间 结果 由于对齐原因,这里的struct依旧使用可4字节,通过#pragma pack(n)可以定义对齐的字节数 这里可以用bit代替bool,节省空间,在网络通信里还可以以此节约流量 阅读全文
posted @ 2018-01-27 11:43 _离水的鱼 阅读(828) 评论(0) 推荐(0)
摘要:原型: sa_flag的参数 man手册里的 SA_NOCLDSTOP If signum is SIGCHLD, do not receive notification when child processes stop (i.e., when they receive one of SIGSTO 阅读全文
posted @ 2018-01-27 09:33 _离水的鱼 阅读(4008) 评论(0) 推荐(0)
摘要:关于setvbuf()函数的详解 阅读全文
posted @ 2018-01-26 17:10 _离水的鱼 阅读(199) 评论(0) 推荐(0)
摘要:关于中断上下文为什么不能睡眠? 阅读全文
posted @ 2018-01-26 10:11 _离水的鱼 阅读(71) 评论(0) 推荐(0)
摘要:进程上下文与中断上下文的理解(感觉加个“进程由用户态切换到内核态时”反而不对,比较了下,感觉着讲的是错的) 又看了一些文章,首先CS(context switch)只会在内核态进行。而发生系统调用是会进入内核态,上下文已经发生变化了,即使回到用户态,未发生进程切换,也算是上下文切换。所以进程的上下文 阅读全文
posted @ 2018-01-26 09:32 _离水的鱼 阅读(442) 评论(0) 推荐(0)
摘要:有空再把笔记移上来 注意点:git remote add origin不是相对于所有git仓库,只相对于当前git仓库 心得:远程建立裸仓库,意味着我不应该直接操作远程仓库。如果我是管理员,我应该先pull远程仓库所有分支,在客户端完成合并后再push 参考: 搭建Git服务器(服务器怎么搭建) i 阅读全文
posted @ 2018-01-04 11:29 _离水的鱼 阅读(149) 评论(0) 推荐(0)
摘要:1.测试vector是否自动释放分配的空间 vector有大致两类申请空间的方式,一是vector(n,T()),一是vector(p,p+n)(p是自己申请的空间的指针)。 其中第一种估计肯定会释放,第二种会不会释放p? 测试结果为不会,电脑直接运行卡死。 2.vector(p,p+n)是直接使用 阅读全文
posted @ 2018-01-03 09:03 _离水的鱼 阅读(255) 评论(0) 推荐(0)
摘要:C++异常机制的执行顺序。 在构造函数内抛出异常 /* * ExceptClass.h * * Created on: 2018年1月2日 * Author: jacket */ #ifndef EXCEPTCLASS_H_ #define EXCEPTCLASS_H_ #include <iost 阅读全文
posted @ 2018-01-02 18:51 _离水的鱼 阅读(1302) 评论(0) 推荐(0)