tcp client design
muduo的tcpclient属于tcp connection + connector的组合使用封装 首先看到构造tcpclient,然后connection,有connected回调之后就可以关注业务逻辑了、 构造 TcpClient::TcpClient(EventLoop* loop, const InetAddress& ser...
muduo的tcpclient属于tcp connection + connector的组合使用封装 首先看到构造tcpclient,然后connection,有connected回调之后就可以关注业务逻辑了、 构造 TcpClient::TcpClient(EventLoop* loop, const InetAddress& ser...
One Billion Row Challenge in Golang - From 95s to 1.96s One Billion Row Challenge in Golang - From 95s to 1.96s 程序员阅读清单:我喜欢的 100 篇技术文章 程序员阅读清单:我喜欢的 100 篇技术文章(1-20) 程序员阅读清单:我喜欢的 100 篇技术文...
android studio在国内安装插件的时候遇到网速慢的问题,可以配置代理 在Settings->Appearance & Behavior->System Settings->HTTP Proxy中配置代理 自己如果有http代理的话就manual配置,如果没有的话可以考虑用aliyun或者腾讯的代理网址 下面两个任选一个就可以 https://mir...
dump文件是一个进程运行时的内存快照, 通常是在进程崩溃时生成的. 各平台的dump文件格式不尽相同,但是一般都包含产生的signal, 寄存器的值, 线程的堆栈信息等. 本文主要讨论如何解析这些信息. 目前存在4大主流平台的crash dump windows, *.dmp mac/ios, *.crash android, crash和ANR是分开存储的 linu...
tcp的server跟client的逻辑不尽相似, 但是最下层的都是tcp connection tcp connection 先简单看一下构造 TcpConnection::TcpConnection(EventLoop* loop, const string& nameArg, ...
主要就三个工具,全部都是免费的 1. Rufus rufus 2. Etcher etcher 这个有图形界面 3. Ventoy Ventoy 这个可以不断的往U盘里面添加ISO文件,然后就可以选择启动了
定长滑动窗口问题其实有一个大的for模板 for (int i = 0;i < n;++i) { // 1. 进入窗口 if (i < k - 1) continue; // 2. 更新答案 // 3. 离开窗口 } 可以做题试试就知道了 大小为 K 且平均值大于等于阈值的子数组数目 1317 这部分中,有一个很经典的问题可以转换为k长度的滑动窗口,比如...
epoll惊群问题 再谈 Linux epoll 惊群问题的原因和解决方案 深入浅出 Linux 惊群:现象、原因和解决方案 这个好 dog250’s blog 模板元编程初探 Simple C++11 metaprogramming Simple C++11 metaprogramming, part 2 CSS t...
简单看下跟常规链表不一样的入侵式链表,和相对而言,这种链表的优势 使用std::list<T> 看一个erase的场景 std::list<T> list; void erase_node(auto* ptr) { for (auto it = list.begin(); it != list.end(); ++it) { if (&*it...
主要看下mem leak检测的tool,一共有4个,分别是: valgrind AddressSanitizer gperftools bcc 1. valgrind valgrind 是一个非常老牌的工具组,其中的 memcheck 可以用来检测内存泄漏。但使用上不是很方便,是侵入式的,而且会对进程的性能有较大影响 2. Asan Addres...