Loading

摘要: 先贴代码,利用了boost asio协程,所以代码基本是同步的编写,但实际是异步地执行。 #define BOOST_ASIO_HAS_CO_AWAIT #include <boost/asio/awaitable.hpp> #include <boost/asio/buffer.hpp> #inc 阅读全文
posted @ 2021-07-21 22:57 KingHowe 阅读(434) 评论(0) 推荐(0) 编辑
摘要: Modern C++引入了可变模板以及模板参数包,如下。 template<typename... Args> class MultiArgs{}; 可以使用std::tuple将参数包隐藏起来,如下。 template<typename... Args> class MultiArgs{ usin 阅读全文
posted @ 2021-01-30 11:13 KingHowe 阅读(152) 评论(0) 推荐(0) 编辑
摘要: etcd-cpp-apiv3编译笔记 etcd-cpp-apiv3是etcd的c++版本客户端api,项目地址为 https://github.com/etcd-cpp-apiv3/etcd-cpp-apiv3 由于readme文档中没详细对此库的编译进行说明,踩了一些坑,遂记录一下。 1.依赖 b 阅读全文
posted @ 2020-12-14 16:16 KingHowe 阅读(1639) 评论(1) 推荐(0) 编辑
摘要: 1.Windows下对文件夹进行共享,确保能够通过 \\windowsip\win_dir 进行访问 2.Ubuntu使用root命令,执行命令 mount -t cifs //windowsip/win_dir /tmp/share_dir -o username=windowsuser,pass 阅读全文
posted @ 2020-12-10 13:47 KingHowe 阅读(1375) 评论(0) 推荐(1) 编辑
摘要: Raft 1. 概述 Raft是一种一致性(共识)算法,相比Paxos,Raft更容易理解和实现,它将分布式一致性问题分解成多个子问题,**Leader选举(Leader election)、日志复制(Log replication)、安全性(Safety)、日志压缩(Log compaction) 阅读全文
posted @ 2020-12-09 16:53 KingHowe 阅读(826) 评论(0) 推荐(0) 编辑
摘要: 1.介绍 AddressSanitizer(ASan),该工具为gcc自带,4.8以上版本均可以使用。 2.使用 编译的方式很简单,只需要添加 -fsanitize=address -g 即可,如 g++ -fsanitize=address -g main.cpp 3.与cmake搭配 CMake 阅读全文
posted @ 2020-12-02 10:14 KingHowe 阅读(2039) 评论(0) 推荐(0) 编辑