摘要: 一个CMakeLists.txt 里生成两个目标,怎么为每个目标设置不同的预定义? 使用set_target_properties,(target ROPERTIES COMPILE_DEFINITIONS ...) 使用cmake生成Makefile后执行make时怎么输出详细的编译命令? 在CM 阅读全文
posted @ 2019-07-16 11:08 Tianrks 阅读(742) 评论(1) 推荐(0) 编辑
摘要: 运算重载符不可以改变语法结构、不可以改变操作数的个数、不可以改变优先级、不可以改变结合性。 自定义类Object,重载运算符: 逻辑运算符 位运算符 关系运算符 成员运算符 阅读全文
posted @ 2019-06-02 22:16 Tianrks 阅读(662) 评论(0) 推荐(0) 编辑
摘要: 锁类型 相关函数原型: int pthread_mutexattr_settype (pthread_mutexattr_t *attr, int kind); int pthread_mutexattr_gettype (const pthread_mutexattr_t *attr, int * 阅读全文
posted @ 2019-04-28 18:00 Tianrks 阅读(914) 评论(1) 推荐(2) 编辑
摘要: 当一次业务处理计算服务和数据库交互较多时,将可能有大量时间浪费在数据传输上,尤其对于计算服务和数据库跨机房或跨地区部署时,浪费的时间会极其可观。为了减少时间浪费可以使用MySQL提供的SQL打包功能。 先来认识两个标记:CLIENT_MULTI_RESULTS:Tell the server tha 阅读全文
posted @ 2019-04-22 19:25 Tianrks 阅读(1360) 评论(0) 推荐(0) 编辑
摘要: 如上图所示场景,服务A通过网络访问服务B,同时两服务分别写数据到DB A、DB B。这样在特殊情况比如网络、机器、数据库等异常下可能导致DB A、DB B之间产生不一致的情况,如下: 第一种情况,DB A成功落库数据后,但是访问服务B失败或服务B写数据失败。就像一笔跨行转账,这边扣了钱,对方却没收到 阅读全文
posted @ 2019-04-18 17:58 Tianrks 阅读(1047) 评论(0) 推荐(0) 编辑
摘要: Redis 的事件分类 Redis支持4种I/O模型:evport、epoll、kqueue、select,通过宏定义决定使用某一个 1 配置加载 config.c : void loadServerConfig(char *filename, char *options) 加载配置文件端口 加载配 阅读全文
posted @ 2019-04-16 10:53 Tianrks 阅读(354) 评论(0) 推荐(0) 编辑
摘要: 什么时候需要重启呢? 版本升级 特殊情况如配置加载的重启 重启时有什么要求? 已接受的请求不能中断 新来的请求要及时响应 因此就需要服务端支持平滑重启的特点,现在设计两种平滑重启的方案:主动式、被动式 被动式平滑重启 特点:新进程是旧进程的子进程,默认继承老进程的所有环境变量 主动式平滑重启 特点: 阅读全文
posted @ 2019-04-07 22:05 Tianrks 阅读(826) 评论(0) 推荐(0) 编辑
摘要: 现在有3个模块:main、service、base,main依赖service的service.h、service依赖base的base.h,怎么写CMakeList.txt避免main直接耦合base - main - service - base base模块 - base.h - base.c 阅读全文
posted @ 2019-04-04 16:44 Tianrks 阅读(2138) 评论(1) 推荐(0) 编辑
摘要: 出口就是函数退出的地方,一个return也算是一个出口。如果一个函数有多个出口可能扰乱读者的思考 这是一个出口,再看个两个出口的 看起来似乎还好,没影响到阅读。再看个复杂点的 这段代码是从实际项目里摘出来简化后的,虽然是简化的,但是看起来依然不太友好,如果后续要修改的话,非常有可能忽略事物的处理,比 阅读全文
posted @ 2019-03-24 21:19 Tianrks 阅读(1202) 评论(0) 推荐(0) 编辑
摘要: SESSION 1 SESSION 2 SESSION 3 START TRANSACTION START TRANSACTION START TRANSACTION INSERT INSERT INSERT ROLLBACK Deadlock 解决方案:无解决方案 SESSION 1 SESSIO 阅读全文
posted @ 2019-03-24 20:49 Tianrks 阅读(929) 评论(0) 推荐(0) 编辑