12 2022 档案
摘要:linux进程或者线程间通信的一种方式 管道本质上就是一个文件,前面的进程以写方式打开文件,后面的进程以读方式打开。这样前面写完后面读,于是就实现了通信 linux的设计思路就是一切皆文件,有着众多的文件系统 管道作为文件的存储地址是内存,所以可以认为Linux上的管道就是一个操作方式为文件的内存缓
阅读全文
摘要:守护进程(Daemon)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程最重要的特性是后台运行 比如周期进行系统校验的进程 1、进程组 进程组就是一个或多个进程的集合。这些进程并不是孤立的,他们彼此之间或者存在父子、兄弟关系,或者在功能上有相近的
阅读全文
摘要:共识算法,可以理解为是为了实现分布式一致性协议而产生的一系列流程与规则。当分布在不同地域的节点都按照这套规则进行协商交互之后,最终总能就某个/某些问题得到一致的决策,从而实现分布式系统中不同节点的一致性 有三个子问题,领导者选举,日志复制,安全性 复制状态机目标,一个初始相同的状态机,输入相同的操作
阅读全文
摘要:1.c的类型转换 int a =1; float b = float(a); 2.静态类型转换 static_cast<目标类型> (标识符) int *p; void *q;p = static_cast<int*>(q) 3.reinterpret_cast<目标类型> (标识符通常为操作数的位
阅读全文
摘要:利用成员函数实现运算符的重载 *在这里实现 ‘+’ 运算符和 ‘<<’ 运算符的重载。 值得注意的是,‘+’ 用全局函数或成员函数都能实现重载;但 ‘<<’ 只能用全局函数实现重载。 class Complex{ friend Complex operator +(Complex &c1 , Com
阅读全文
摘要:c++ 完全兼容c语言,那就面临着,完全兼容c的类库。由.c文件的类库文件中函数名,并没有发生namemangling 行为,而我们在包含.c文件所对应的.h文件时,.h文件要发生name manling 行为,因而会发生在链接的时候的错误。C++为了避免上述错误的发生,重载了关键字 extern。
阅读全文
摘要:左值引用:引用一个对象; 右值引用:就是必须绑定到右值的引用,C++11中右值引用可以实现“移动语义”,通过 && 获得右值引用。 int x = 6; // x是左值,6是右值 int &y = x; // 左值引用,y引用x int &z1 = x * 6; // 错误,x*6是一个右值 con
阅读全文