- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 linux学习笔记-muduo网络库设计与实现
文章目录4. 一个线程只允许创建一个loop(one thread one loop)3. __thread 关键字2.获取当前线程ID1. __builtin_expect 分支预测优化4. 一个线程只允许创建一个loop(one thread one loop)muduo中的实现方式如下面代码所示,可以看出是通过一个__thread 变量实现的,__thread变量的特点是:1.每个线程...
2020-03-14 00:31:47 664
原创 SQL/Redis必知必会笔记
文章目录1. sql中命令的执行顺序1. sql中命令的执行顺序1、FROM子句组装数据2、WHERE子句进行条件筛选3、GROUP BY分组4、使用聚集函数进行计算;5、HAVING筛选分组;6、计算所有的表达式;7、SELECT 的字段;8、ORDER BY排序9、LIMIT筛选例子:SELECT DISTINCT player_id, player_name, c...
2020-03-15 16:09:40 327
原创 算法复习第二阶段
文章目录散列表1.总结2.问题3.典型算法题树1.总结2.问题3.典型算法题堆1.总结2.问题3.典型算法题图1.总结2.问题3.典型算法题字符串匹配1.总结2.问题3.典型算法题搜索1.总结2.问题3.典型算法题散列表1.总结2.问题3.典型算法题树1.总结2.问题3.典型算法题算法训练-二叉树堆1.总结2.问题3.典型算法题图1.总结2.问题3...
2020-03-14 00:36:11 148
原创 三次握手和四次挥手的包分析
原文链接:https://www.cnblogs.com/god-of-death/p/7905817.html下图为网络编程实战学习笔记(八)中demo的实验抓包情况TCP ------ 抓包分析(seq ack)总结的挺好的,直接抄过来了。总结:1、ACK包可以和其他包合在一起,比如ACK包可以携带数据2、可以接收多个数据包后,一次性给一个应答,不用每个数据包一一对应给应答3、在...
2020-03-14 00:29:43 674
原创 网络编程实战学习笔记(十四)-epoll
EpollC10k问题非阻塞IO1.是否使用了select poll epoll等就是非阻塞了?非阻塞IO指的是套接字类型,而不是网络事件模型(select,poll,epoll)阻塞IO+多进程模型1.多进程采用fork实现,程序调用 fork 一次,在父、子进程里各返回一次。在调用该函数的进程(即为父进程)中返回的是新派生的进程 ID 号,在子进程中返回的值为 0。想要知道当前执行...
2020-03-14 00:28:43 145
原创 网络编程实战学习笔记(十三)-select多路复用
网络编程实战学习笔记(十三)-select多路复用Day20基础知识1.select 方法是多个 UNIX 平台支持的非常常见的 I/O 多路复用技术,它通过描述符集合来表示检测的 I/O 对象,通过三个不同的描述符集合来描述 I/O 事件 :可读、可写和异常。但是 select 有一个缺点,那就是所支持的文件描述符的个数是有限的。在 Linux 系统中,select 的默认最大值为 102...
2020-03-14 00:27:31 177
原创 算法复习第一阶段
算法复杂度分析时间复杂度大 O 时间复杂度实际上并不具体表示代码真正的执行时间,而是代表代码时间随着数据规模增长的变化趋势,所以也叫渐进时间复杂度,简称时间复杂度复杂度量级 **O(1) ** : 只要代码的运行时间不随n的增大而增长,这样代码的时间复杂度都是O(1)最好、最坏时间复杂度平均时间复杂度均摊时间复杂度均摊时间复杂度和摊还分析应用场景比较特殊,所以我们并不会经常用到...
2020-03-14 00:24:25 303
原创 借助可变模板实现观察者模式的一种替代方式
陈硕在观察者模式之缪中提到,Observe模式有本质的问题,问题的根本原因在于面向对象的设计.其中的一个问题是,observer是基类,带来了非常强的耦合,强度仅次于友元类型,这种耦合限制了成员函数的名字,参数,返回值,还限制了成员函数所属的类型(必须是observer的派生类).还有一些其他的问题,这里不细述了,C++语言可以通过function/bind绕开Observer模式的限制.书中的代...
2020-03-13 21:35:42 409
CNN-人群密度检测-密度图制作-数据集-标注工具等
2018-10-28
区块链革命
2018-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人