主要讨论 锁的分类,锁的特点,锁的应用场景 为什么要有锁?为了解决多线程环境下的数据竞争问题,保证共享资源在同一时刻只有一个线程访问。 常见的锁 锁类型特点适用场景优点缺点互斥锁 (Mutex)一次只允许一个线程访问最常见的线程同步简单、可靠线程阻塞、切换开销大自旋锁 (Spinlock)线程忙等(不停循环检查锁)锁持有时间非常短上下文切换开销小C…
todo
05 获取地理信息 ——非复吕蒙之三日,但见楚庄之飞鸣。 wireshark中是没有获取地理信息功能的,这算是一个新future 我们使用开源的数据库ip2region来做。 项目地址:https://github.com/lionsoul2014/ip2region 我们能拿到一个ip2region.xdb文件,如果要使用这类信息库文件,首先得加…
01 概述 基于tshark, cpp开发类wireshark软件 nbEasyTshark Wireshark主要特点: 支持三千多种协议深度解析 实时捕获和离线分析 强大的过滤功能 (Display Filter、Capture Filter) 支持流分析(FollowStream) 支持多种操作系统(Windows、Linux、macOS) …
Make tiny progress every day. ——yangnanbei 参考资料: https://perf.wiki.kernel.org man手册 https://www.youtube.com/playlist?list=PLx-WakpEO8zFQGRrB4xYAuWjHKqVWlwaD Perf更详细的介绍 - 陈小欧 -…
前言 最近两周的工作有一部分是性能优化,包括排查性能问题,部分架构优化,热点函数优化等。 感觉自己在工作中对还是对性能这块蛮有兴趣的,原因如下: 因为这块的工作能有结实的产出。我现在负责的几个模块是前人留下的,或多或少总能发现性能的问题或者工程上不合理的处理并解决。 性能问题是个手艺活,在一个复杂的环境,复杂的项目里,如何快速的定位?这里可以整理成…
cheat.sh 命令示例 cheat.sh, 这是一个更好的命令行帮助文档。 以往我们需要查找linux命令行用法的话,我们会选择用man手册或者命令后跟随--help来阅读相应的提示。 如下: man awk Awk --help 虽然释义很详尽,但是直观的例子较少。 使用cheat.sh cheat.sh是一个网站 curl cheat.sh…