自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 pthread_key的使用

pthread_key的使用

2022-12-26 12:04:42 252 1

原创 深入理解阻塞IO、非阻塞IO、异步IO与同步IO的关系

深入理解阻塞IO、非阻塞IO、异步IO与同步IO的关系

2022-12-08 09:29:16 277

原创 epoll的实现原理

epoll的实现原理

2022-12-07 16:25:37 177

原创 TCP重传与超时(Linux)

TCP重传与超时

2022-12-06 11:45:17 3616

原创 字节对齐的讨论

字节对齐的讨论

2022-10-19 14:25:21 50

原创 网络IO管理

epoll_ctl有三个操作EPOLL_CTL_ADD、EPOLL_CTL_MOD和EPOLL_CTL_DEL,分别对应注册文件描述符与关注的事件、修改文件描述符关注的事件和删除注册节点。poll与select类似,select是用三个集合来返回哪些文件描述符可读/可写/有异常,而poll对于每个监控的文件描述符,对于返回状态用标记位来表示。epoll相对于poll来说,事件的触发与时间的处理并不是同步的,而是异步,使得服务器程序的用户态可以只关注已经触发事件的文件描述符。去处理不同连接的请求,那么是。..

2022-07-27 12:23:59 239

原创 Makefile和CMake

如果把这个目录copy到另外的目录上作为备份,因为这些中间文件和makefile组成的工程指向的路径是原来的目录上,所以当我们修改源文件编译的时候,编译的源文件是原来目录上的源文件。如果没有这个声明,make程序会把clean当做是文件,所以如果存在clean文件的时候,那么运行这个规则的时候就会当做文件存在而不执行命令。file文件系统操作,GLOB是把与模式匹配的文件的文件名加入到变量中,GLOB_RECURSE与GLOB类似,但会在匹配的文件的目录中的子目录递归地把匹配的文件的文件名加入到变量中。..

2022-07-22 11:24:40 1327

原创 c++11中的atomic与执行顺序问题的讨论

对于读屏障,运行时,读屏障之前的已经加入到storebuffer的修改操作会被标记,如果storebuffer的所有修改操作还未收到回复而清空掉,那么读屏障之后的修改操作就会加入到storebuffer中,cache中对应的缓存行还是原来的值而不是storebuffer的值。如果存在一个c指令不依赖于a指令也不依赖于b指令,那么处理器优化就可以把c指令重排到a指令之前,这样子有利于减少流水线停止来等待b指令完成的时间。内存屏障可以使得屏障前后的指令不被编译器优化和处理器优化重排。...

2022-07-18 15:32:42 409

原创 c++11新特性的线程相关

1、thread在c++11之后,标准库有对于子线程的支持。要运用thread就要链接线程库,编译的时候要添加选项“-lpthread”。thread就是用于多线程编程的。thread的基本用法如下:2、互斥量互斥量有好几种:mutex、timed_mutex、recursive_mutex、recursive_timed_mutex、shared_mutex(c++17)、shared_timed_mutex(c++14)。用法:timed_mutex与mutex大同小异,timed_mute

2022-07-13 10:07:37 313

原创 c++11 部分特性的讨论

智能指针:

2022-05-10 23:10:52 772

原创 常用设计模式的讨论

创建型设计模式的讨论

2022-04-16 00:06:32 285

原创 hash的讨论

hash函数与冲突处理。哈希表布隆过滤器hyperloglog(redis)分布式一致性hash负载因子:哈希数组存储的元素/哈希数组的长度。哈希冲突:不同的key值利用哈希函数算出相同的addr冲突解决方式:1、链表法:a、头插法(一般用于数据库,数据库因为认为刚刚插入的元素最近会更加容易访问到)b、尾插法c、当链表过长可以把链表转化成红黑树或者avl树。2、开放地址法:...

2022-04-10 15:13:16 311

原创 应用设计模式的方法

应用设计模式的方法

2022-03-28 16:19:36 452

原创 对于b-tree的讨论

对于b-tree的讨论

2022-03-27 21:42:45 380

原创 lua的getfenv与setfenv的讨论

lua的getfenv与setfenv的讨论

2022-03-12 11:39:07 645

原创 红黑树结点的插入与删除

红黑树结点的插入与删除。

2022-03-07 17:37:01 243

原创 c/c++中int类型的负数用强制类型转化为long long类型的讨论

今天遇到一个问题,想分享一下,以下是运行代码:#include <iostream>int main(int argn, char ** argc){ int int_num = 0xffffff00; //1 unsigned int uint_num = (unsigned int)(int_num); unsigned long long ull_num = (unsigned long long)(uint_num); long lo

2022-03-02 00:11:50 2597

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除