2 li_haoren

尚未进行身份认证

暂无相关简介

等级
TA的排名 23w+

盲猜原子变量、内存屏障、内存模型、锁之间的关系

1、atomic_flag和atomic<>的区别,atomic_flag无论无锁是多大代价(一些cpu可能无锁代价大),都保证atomic_flag是无锁的。atomic<>会视情况,可能是有锁的也可能是无锁的,哪个开销小选哪个。2、C++内存模型可以被看作是C++程序和计算机系统(包括编译器,多核CPU等可能对程序进行乱序优化的软硬件)之间的契约,它...

2019-09-30 23:48:00

四、c++总结------linux多线程服务端编程

2019-08-18 18:14:00

c++函数声明的位置对函数重载的影响

c++为了兼容c,也是采用(假)单遍编译。这特别影响函数重载决议(当c++编译器读到一个函数调用语句时,它必须从目前已看到的同名函数中选出最佳函数,哪怕后面的代码中出现了更合适的匹配)1#include<iostream>2usingnamespacestd;3voidf(inta)4{5cout<&...

2019-08-17 14:16:00

lua调用dll demo

使用的是lua5.3DllMain.cpp1//生成的dll是lua_add53.dll2//luaopen_lua_add3extern"C"{4#include"F:/lua_src/lua-5.3.5_Win64_vc15_lib/include/lua.h"5#include"F:/lua_src/lua-5....

2019-08-16 18:00:00

三、分布式编程总结------linux多线程服务端编程

2019-08-13 22:19:00

二、多线程及服务器编程总结------linux多线程服务端编程

2019-08-11 17:05:00

一、智能指针及线程同步总结------linux多线程服务端编程

2019-08-08 00:05:00

vscode remote wsl 的NoPermissions permission denied问题

在wsl这个目录code-insiders.之后会报这个错无法打开“wsl”:Unabletoreadfile(NoPermissions(FileSystemError):Error:EACCES:permissiondenied,stat'/root/wsl')。这个问题其实很简单,wsl是软连接,vscode应该是不支持打开软连接的。直接在/...

2019-07-25 15:56:00

tcp/udp注意事项

2019-07-22 23:50:00

ptmalloc tcmalloc jemalloc 总结的总结 及覆盖原理

windows下还有detours库可以hook

2019-07-14 23:06:00

epoll源码解析翻译------说使用了mmap的都是骗子

本文地址//https://www.cnblogs.com/l2017/p/10830391.html//https://blog.csdn.net/li_haorenselectpollepoll这三个都是对poll机制的封装。只是select跟poll傻了点epoll里并没有找到mmap相关的代码。并没有用到内核态内存映射到用户态的技术。但这个技术是存在的。dpdk,跟...

2019-06-30 22:07:07

重点思维导图------redis深度历险

重点思维导图------redis深度历险 posted@2019-05-0623:41ff_d阅读(...)评论(...)编辑收藏

2019-05-06 23:41:00

全文思维导图------redis设计与实现

全文思维导图------redis设计与实现 posted@2019-05-0416:18ff_d阅读(...)评论(...)编辑收藏

2019-05-04 16:18:00

有大佬拉我一把麽,现在广州还有c++后台实习招聘麽

有大佬拉我一把麽,现在广州还有c++后台实习招聘麽 有大佬拉我一把麽,现在广州还有c++后台实习招聘麽 posted@2019-05-0109:41ff_d阅读(...)评论(...)编辑收藏 ...

2019-05-01 09:41:00

redis所有数据结构及对象------redis设计与实现

redis所有数据结构及对象------redis设计与实现 建议点开原图看 posted@2019-04-2923:50ff_d阅读(...)评论(...)编辑收藏 ...

2019-04-29 23:50:00

epoll好文章

epoll好文章 https://www.cnblogs.com/apprentice89/p/3234677.htmlhttps://www.jianshu.com/p/aa486512e989https://cloud.tencent.com/developer/article/1005481最后看看epoll独有的两种模...

2019-04-19 22:44:00

互斥锁和条件变量锁注意事项

互斥锁和条件变量锁注意事项 如果互斥锁变量是静态分配的,那么我们可以把它初始化成常值PTHREAD_MUTEX_INITIALIZER例如:staticpthread_mutex_tlock=PTHREAD_MUTEX_INITIALIZER;如果互斥锁是动态分配的(例如mallocnew)或者分配在共享内存区中,那么...

2019-04-19 00:07:00

Posix信号

Posix信号 Posix实时信号的值在SIGRTMIN和SIGRMAX之间(包括两者)。如果需要实时行为,我们必须使用在SIGRTMIN和SIGRMAX之间的实时信号,且在安装信号处理程序时必须给sigaction指定SA_SIGINFO标志。实时行为指  信号是排队的。就是说,如果同一信号产生了三次,它就递交了三次。以先进先出顺...

2019-04-18 22:40:00

Posix消息队列注意事项

Posix消息队列注意事项随内核的持续性读总是返回最高优先级的最早消息。当往一个空队列放置一个消息时,允许产生一个信号或启动一个线程。可认为是一个消息链表队列中每个消息具有  1.一个无符号整数优先级  2.消息的数据部分长度(可以为0)  3.数据本身(如果长度)链表头中为当前队列的两个属性:队列中允许的最大消息数(mq_mqxmsg)以及每个消息的最大大...

2019-04-18 22:31:00

管道

管道 管道1.其本质是一个伪文件(实为内核缓冲区)2.由两个文件描述符引用,一个表示读端,一个表示写端。3.规定数据从管道的写端流入管道,从读端流出。管道的原理:管道实为内核使用环形队列机制,借助内核缓冲区(4k)实现。管道的局限性:数据一旦被读走,便不在管道中存在,不可反复读取。缓冲区是有限由于管道采用半...

2019-04-17 15:14:00

查看更多

勋章 我的勋章
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。