摘要:
为了项目的需要,又温习了一遍Cmake,记录一下资源出处 《CMake实践》中文书 github资源 https://sfumecjf.github.io/cmake-examples-Chinese/01-basic/1.1%20%20hello-cmake.html 阅读全文
摘要:
一、apt安装,版本无法指定 sudo apt update sudo apt install libprotobuf-dev protobuf-compiler 二、下载指定版本protobuf安装包 sudo wget https://github.com/protocolbuffers/pro 阅读全文
摘要:
先后一致次序(memory_order_seq_cst) 如果程序服从先后一致次序,就简单地把一切事件视为按先后顺序发生,其操作与这种次序保持一致。假设在多线程程序的全部原子类型的实例上,所有的操作都保持先后一致,name它们将按某种特定次序改由单线程执行,则俩个程序的操作毫无区别。 缺点:在弱保序 阅读全文
摘要:
int x = 0; int y = 0; int r0, r1; //cpu1 void f1() { x = 1; std::atomic_thread_fence(std::memory_order_acquire); r0 = y; } //cpu2 void f2() { y = 1; s 阅读全文
摘要:
段错误:访问到了不该访问的虚拟内存 进程内内存区域的对象: 1.代码段 2.已初始化的全局变量的全局变量,数据段 3.包含未初始化的全局变量,bss段(C++程序中没有) 4.用于进程用户空间栈 5. C库或动态链接程序等共享库的代码段,数据段和bss 6.任何内存映射文件 7.任何共享内存段 8. 阅读全文
摘要:
中断分为上半部和下半部, 上半部为硬中断处理,主要是为了处理一些对时间要求很高的数据,然后将剩下繁琐(需要很多时间)的工作交给下半部。 下半部:软中断,tasklet和工作队列。 硬中断:中断电信号发送到中断控制器(将多路中断管线,采用复用技术只通过一个管线与处理器通信)的输入引脚中,中断控制器将信 阅读全文
摘要:
1、基本概念 我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程。子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束。 当一个 进程完成它的工作终止之后,它的父进程需要调用wait()或者waitpid()系统调用取得子进 阅读全文
摘要:
//hello.c #include <stdio.h> int main (void) { printf ("Hello, world!\n"); return 0; } 预处理:替代宏,引入头文件 cpp hello.c > hello.i 编译: gcc -Wall -S hello.i (生 阅读全文
摘要:
b站 布老师视频 《an introduction to gcc》 找到一本好书《GCC技术参考大全》,可以先浅浅浏览一下 后面可以开始看gcc manual了 你渴望技术吗.jpg 经过询问乐哥,gcc4.8才开始支持c++11, 现在暂定看gcc5.0 阅读全文
摘要:
如何设计一个合格的单例模式也是个问题。 一下例子都是懒汉式,即用到再生成 class Singleton{ private: Singleton(); Singleton(const Singleton& other); public: static Singleton* getInstance() 阅读全文