golang GMP调度模型
摘要:https://zhuanlan.zhihu.com/p/554812539?utm_id=0 1. 1:1:会有创建和销毁线程的开销 2. 1:N:饿死,或者一个阻塞后面的都不能执行 3. M:N: 1)word stealing: M偷其他M的P队列中的G 2)hand off:M阻塞了,要让出
阅读全文
posted @
2024-02-29 15:44
bytesmover
阅读(9)
推荐(0) 编辑
限流算法
摘要:固定时间窗 比如1秒钟限制访问100次,则用1秒作为时间窗,用个计数器,下个时间窗到了就把计数器置0;实现方式可以用一个线程定时1秒钟刷一次,但在某些系统中,可能会有很多个qps拦截器,这样会导致线程数很多,所以也可以改成记录上次时间窗的时间点,每次计数器+1之前算一下时间窗是否超过1秒了。 滑动窗
阅读全文
posted @
2024-02-20 20:12
bytesmover
阅读(10)
推荐(0) 编辑
用C++实现string类
摘要:今天用C++实现了一个string类,包括构造函数、拷贝构造、赋值构造、流输出、移动构造、重载+号, 发现很多细节都没有考虑到,细节都在注释中,贴在这里作为备忘吧。 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std;
阅读全文
posted @
2024-02-20 12:36
bytesmover
阅读(13)
推荐(0) 编辑