- 博客(14)
- 收藏
- 关注
原创 TinyWebServer——线程同步
将基本类型指针封装为类对象指针(这个类肯定是个模板,以适应不同基本类型的需求),并在析构函数里编写delete语句删除指针指向的内存空间。智能指针的构造函数都声明为explicit,防止隐式转换。互斥量:是一段关键代码段,确保独占式访问,当进入关键代码段,获得互斥锁将其加锁;当离开关键代码段,唤醒等待该互斥锁的线程。信号量是一种特殊的变量,它只能取自然数并且只支持两种操作:等待(P)和信号(V)。功能:实现多线程同步,确保任意时刻只有一个线程能进入关键代码段。假设有信号量SV,其P, V操作如下。
2025-06-05 20:43:23
67
原创 Tiny WebServer入门
功能:通过HTTP协议与客户端(通常是浏览器)进行通信,来接收、存储、处理来自客户端的HTTP请求,并对其请求做出HTTP响应,返回给客户端其请求的内容或则ERROR信息。线程池(半同步半反应堆模式):主线程负责读写,工作线程(线程池中的线程)负责处理逻辑(HTTP请求报文的解析等)。被放入监听队列,此时需要通知web服务器有连接来了,accept这个连接,并分配一个逻辑单元来处理(并发)。由于用户连接请求是异步事件,每当监听socket,监听到的新的客户连接。
2025-06-04 12:10:17
582
原创 vscode及MinGW环境下导入easyx库
选择适配MinGW的版本,即第二个(easyx适配特定的MinGW版本,如果最终不成功,可以检查是否是MinGW版本错误)下载完成后解压缩,进入到easyx文件夹中可以看到有。在task的args中添加“-leasyx”下面用一个最简单的模拟easyx的使用。中有一些程序可以借鉴,
2024-05-25 19:05:49
2436
4
原创 python之subprocess模块
args:表示要执行的命令,必须是字符串或字符串参数列表Stdin, stdout, stderr:子进程的标准输入、输出和错误,其值可以是subprocess.PIPE, subporcess.DEVNULL, 一个已经存在的文件描述符、已经打开的文件对象或者Nonetimeout:设置命令超时时间,若超时,子进程将被杀死,并弹出TimeoutExpired异常check:若该参数设为true,且进程退出状态码不是0,则弹出CalledProcessError异常。
2024-02-27 17:32:52
7051
1
基于用户的协同过滤算法
2023-03-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人