- 博客(144)
- 资源 (8)
- 收藏
- 关注
原创 转 Cache一致性和内存模型
卢本伟牛逼,写得很好https://wudaijun.com/2019/04/cpu-cache-and-memory-model/本文主要谈谈CPU Cache的设计,内存屏障的原理和用法,最后简单聊聊内存一致性。我们都知道存储器是分层级的,从CPU寄存器到硬盘,越靠近CPU的存储器越小越快,离CPU越远的存储器越大但越慢,即所谓存储器层级(Memory Hierarch...
2020-03-08 19:21:00
574
原创 windows10 vs2017编译opencv_contrib3.4.7的小坑及编译好的资源
1、注意要用正斜杠 / 不要用 \https://github.com/opencv/opencv/issues/11655CMake Error at cmake/OpenCVModule.cmake:368 (_glob_locations): Syntax error in cmake code at E:/opencv_github/openc...
2020-02-15 11:43:00
1570
2
原创 TIP/Collision-Free Video Synopsis Incorporating Object Speed and Size Changes Code
代码地址https://github.com/scutlzk/Collision-Free-Video-Synopsis-Incorporating-Object-Speed-and-Size-Changes-Code论文地址https://ieeexplore.ieee.org/document/8848836
2019-10-13 09:41:00
5612
原创 盲猜原子变量、内存屏障、内存模型、锁之间的关系
1、atomic_flag 和atomic<>的区别,atomic_flag 无论无锁是多大代价(一些cpu可能无锁代价大),都保证atomic_flag是无锁的。atomic<>会视情况,可能是有锁的也可能是无锁的,哪个开销小选哪个。2、C++内存模型可以被看作是C++程序和计算机系统(包括编译器,多核CPU等可能对程序进行乱序优化的软硬件)之间的契约,它...
2019-09-30 23:48:00
449
2
原创 c++函数声明的位置对函数重载的影响
c++为了兼容c,也是采用(假)单遍编译。这特别影响函数重载决议(当c++编译器读到一个函数调用语句时,它必须从目前已看到的同名函数中选出最佳函数,哪怕后面的代码中出现了更合适的匹配) 1 #include<iostream> 2 using namespace std; 3 void f(int a ) 4 { 5 cout <&...
2019-08-17 14:16:00
136
原创 lua调用dll demo
使用的是lua5.3DllMain.cpp 1 //生成的dll 是 lua_add53.dll 2 //luaopen_lua_add 3 extern "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
329
原创 vscode remote wsl 的NoPermissions permission denied问题
在 wsl这个目录code-insiders . 之后会报这个错无法打开“wsl”: Unable to read file (NoPermissions (FileSystemError): Error: EACCES: permission denied, stat '/root/wsl')。这个问题其实很简单,wsl是软连接,vscode应该是不支持打开软连接的。直接 在/...
2019-07-25 15:56:00
5619
原创 epoll源码解析翻译------说使用了mmap的都是骗子
本文地址//https://www.cnblogs.com/l2017/p/10830391.html//https://blog.csdn.net/li_haorenselect poll epoll这三个都是对poll机制的封装。只是select跟poll傻了点epoll里并没有找到mmap相关的代码。并没有用到内核态内存映射到用户态的技术。但这个技术是存在的。dpdk,跟...
2019-06-30 22:07:07
1795
原创 重点思维导图------redis深度历险
重点思维导图------redis深度历险 posted @ 2019-05-06 23:41 ff_d 阅读(...) 评论(...) 编辑 收藏
2019-05-06 23:41:00
1218
原创 全文思维导图------redis设计与实现
全文思维导图------redis设计与实现 posted @ 2019-05-04 16:18 ff_d 阅读(...) 评论(...) 编辑 收藏
2019-05-04 16:18:00
291
原创 有大佬拉我一把麽,现在广州还有c++后台实习招聘麽
有大佬拉我一把麽,现在广州还有c++后台实习招聘麽 有大佬拉我一把麽,现在广州还有c++后台实习招聘麽 posted @ 2019-05-01 09:41 ff_d 阅读(...) 评论(...) 编辑 收藏 ...
2019-05-01 09:41:00
138
原创 redis所有数据结构及对象------redis设计与实现
redis所有数据结构及对象------redis设计与实现 建议点开原图看 posted @ 2019-04-29 23:50 ff_d 阅读(...) 评论(...) 编辑 收藏 ...
2019-04-29 23:50:00
1180
原创 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
625
原创 互斥锁和条件变量锁注意事项
互斥锁和条件变量锁注意事项 如果互斥锁变量是静态分配的,那么我们可以把它初始化成常值PTHREAD_MUTEX_INITIALIZER例如 :static pthread_mutex_t lock =PTHREAD_MUTEX_INITIALIZER;如果互斥锁是动态分配的(例如malloc new)或者分配在共享内存区中,那么...
2019-04-19 00:07:00
1276
原创 Posix信号
Posix信号 Posix实时信号的值在SIGRTMIN和SIGRMAX之间(包括两者)。如果需要实时行为,我们必须使用在SIGRTMIN和SIGRMAX之间的实时信号,且在安装信号处理程序时必须给sigaction指定SA_SIGINFO标志。实时行为指 信号是排队的。就是说,如果同一信号产生了三次,它就递交了三次。以先进先出顺...
2019-04-18 22:40:00
225
原创 Posix消息队列注意事项
Posix消息队列注意事项随内核的持续性读总是返回最高优先级的最早消息。当往一个空队列放置一个消息时,允许产生一个信号或启动一个线程。可认为是一个消息链表队列中每个消息具有 1.一个无符号整数优先级 2.消息的数据部分长度(可以为0) 3.数据本身(如果长度)链表头中为当前队列的两个属性:队列中允许的最大消息数(mq_mqxmsg)以及每个消息的最大大...
2019-04-18 22:31:00
565
3
原创 管道
管道 管道1. 其本质是一个伪文件(实为内核缓冲区)2. 由两个文件描述符引用,一个表示读端,一个表示写端。3. 规定数据从管道的写端流入管道,从读端流出。管道的原理: 管道实为内核使用环形队列机制,借助内核缓冲区(4k)实现。管道的局限性:数据一旦被读走,便不在管道中存在,不可反复读取。缓冲区是有限由于管道采用半...
2019-04-17 15:14:00
93
install.7z
2020-02-15
video4.7z.002
2019-10-13
video4.7z.001
2019-10-13
video4.7z.003
2019-10-13
vs2015 c++实现 Interactive graph cuts
2018-01-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人