编程小破屋
首页
归档
友链
图库
日志
关于
分类
nginx (1)
英语 (1)
QT (2)
数据库 (9)
OpenSSL (3)
程序设计 (9)
课设 (3)
设计模式 (0)
接口 (1)
pascal (2)
python (1)
linux (30)
汇编 (2)
计算机网络 (10)
算法 (8)
网络编程 (19)
shell (14)
蓝桥杯 (5)
java (1)
c/c++ (96)
软件工程 (13)
驱动设计 (8)
数据结构 (14)
工具 (46)
全部分类 ( 185 )
查询
当前位于"程序设计"分类下
多线程的虚假唤醒理解
虚假唤醒在多线程环境中,在竞争资源的时候,有时候拿到了锁,却发现资源没了,这可能就是使用了条件等待产生的一个惊群效应。pthread_cond_signal将所有的pthread_cond_wait线程都唤醒了,但是只有个别线程竞争到了资源,没有竞争资源的线程就是属于虚假唤醒的线程。对于虚假唤醒的线
c/c++
程序设计
2020年11月17日
104次浏览
hyperscan字符串匹配库接口封装
字符串匹配在工作中,需要用字符串匹配,为了可以快速切换不同的库,编写了这个匹配接口,方便实现不同字符串匹配库的切换.接口封装头文件kwmatch.h#ifndef__KWMATCH_H__#define__KWMATCH_H__//controllogprintswitch#defineKW_DEB
工具
c/c++
2020年11月04日
106次浏览
内存池设计
内存池在日常的写代码中,经常有需要申请内存的时候,但是频繁的申请释放会特别的浪费时间,于是衍生了内存池,由内存池帮忙管理内存,内存池帮忙统一释放,免去了用户的频繁释放,申请内存只需要从内存池中已经申请好的内存中取出,如果没有大于需求的内存,则内存池再去申请一块回来。内存池增强了程序员对内存碎片话的管
c/c++
程序设计
linux
2020年06月26日
235次浏览
互斥锁,条件等待,读写锁,自旋锁,原子操作,CAS操作
互斥锁(mutex)用在执行长的代码块效率较高,如果只是执行一条少的指令,速度不如自旋锁和原子锁。如果被锁住,线程回去休眠等待,不占用系统资源。由于共享区域执行时间长,所以速度快。API:#include<pthread.h>//动态初始化:intpthread_mutex_init(p
工具
c/c++
程序设计
linux
2020年06月09日
225次浏览
线程池的封装实现
线程常用函数创建线程函数———pthread_create函数#include<pthread.h>intpthread_create(pthread_t*thread,constpthread_arrt_t*attr,void*(*start_routine)(void*),void*
c/c++
程序设计
2020年06月08日
260次浏览
异步http客户端
做法流程1.init_contexta.pthread_createb.epoll_create2.uninit_context()a.pthread_cannelb.close3.commit()a.准备socketb.connectc.protocol;dns/http/redis/mysqld
c/c++
程序设计
linux
2020年06月07日
238次浏览
单例
单例概念:保证一个类仅有一个实例,并提供一个该实例的全局访问点。--《设计模式》GoF使用场景DBPool读取配置文件常见写法饿汉式单例懒汉式单例双锁型单例模式线程安全型单例模式结构要点总结Singleton模式中实例构造器可以设置为protected以允许子类派生。Singleton模式一般不要支
c/c++
程序设计
2020年06月01日
229次浏览
工厂模式
工厂模式概念:定义一个用于创建对象的接口,让子类决定实例化哪一个类。FactoryMethod使得一个类的实例化延迟(目的:解耦,手段:虚函数)到子类。--《设计模型》GoF结构要点总结FactoryMethod模式用于隔离类对象的使用者和具体类型之间的耦合关系。面对一个经常变化的具体类型,紧耦合关
c/c++
程序设计
2020年06月01日
230次浏览
观察者模式
观察者模式概念:定义对象间的一种一对多(变化)的依赖关系,以便当一个对象(subject)的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。--《设计模式》GoF结构要点总结使用面向对象的抽象,Observer模式使得我们可以独立地改变目标与观察者,从而使二者之间的依赖关系达到松耦合。目标发
c/c++
程序设计
2020年06月01日
227次浏览
«
1
(current)
»
个人信息
大耗子
北京 通州
文章数量
185
分类数量
24
标签数量
34
觉得我博客写的还阔以的,可以关注我的csdn博客,这个博客没办法关注,吼吼吼 https://blog.csdn.net/G_Super_Mouse
所有标签
nginx
1
英语
1
QT
1
数据库
2
OpenSSL
3
程序设计
8
软件设计
1
课设
3
设计模式
0
文件
3
优化
1
8088
1
cpu引脚
1
接口
1
设计工程
2
设计
0
markdown
1
pascal
2
python
1
linux
29
汇编
2
计算机网络
10
网络编程
19
shell
14
LKM
2
蓝桥杯
5
算法
7
mysql
7
java
1
c/c++
99
驱动设计
8
软件工程
11
数据结构
13
工具
46
所有标签
185