摘要: 原子操作(X86架构) 楔子 首先什么是原子,意味着不可再分。相应地,反映在计算机程序里,那么就会成为一条指令,不存在中间指令,执行过程不会被打断。这样程序在执行时,就能够保证独占访问,避免其它线程访问它。接下来接口的讲解,是以C11标准有#inlcude <stdatomic>为例。 已有接口 这 阅读全文
posted @ 2024-07-26 17:40 LemHou 阅读(181) 评论(0) 推荐(0)
摘要: 手写线程池 线程池解决的问题是避免线程创建、销毁的代价以及避免线程太多,内存耗尽。GCC编译时,必须通过指令引入线程库。 gcc -o threadpool threadpool.c -pthread 组件开发 线程池最基本需要包含三个组件 任务队列-添加任务 管理组件-管理线程对立以及任务队列 执 阅读全文
posted @ 2024-07-26 11:33 LemHou 阅读(65) 评论(0) 推荐(0)
摘要: socket网络通信 socket能够解决的问题是客户端和服务器端进行交流的问题 服务器server socket() 的作用是创建一个端点,然后返回一个fd指向这个端点。包括分配fd和分配tcb进程控制块两。接受三个参数需要指定通信域 domain(AF_INET, AF_INET6)、指定通信语 阅读全文
posted @ 2024-07-24 16:40 LemHou 阅读(23) 评论(0) 推荐(0)
摘要: C语言 文件操作 fopen(filename, "r") // 只读模式打开文件 -r // 只读 -w // 可写 -b // 二进制 fgetc(fd) // 从fd获取char fgets(st, n, stdin) // 从输入流获取n个字符 getchar() // 从输入流获取一个字符 阅读全文
posted @ 2024-07-24 11:25 LemHou 阅读(11) 评论(0) 推荐(0)
摘要: 事件处理模式 reactor模式 reactor是一种事件处理模式,出现要解决的问题是要将原本IO管理转变为更关心事件管理,每个事件发生的时候调用回调函数进行处理。 构成 register 注册事件 callback 回调函数 结构体包括io, event, callback, rbuffer, w 阅读全文
posted @ 2024-07-22 23:53 LemHou 阅读(19) 评论(0) 推荐(0)
摘要: IO多路复用 select系统调用 维护的是一个文件描述符(fd)集合(set),监测这些fd集合。 #include <sys/select.h> // 头文件 运行机制 将fedset复制到内核空间,然后对其进行遍历,查看可读,可写,错误事件,返回就绪事件总数。 select函数 select函 阅读全文
posted @ 2024-07-21 21:19 LemHou 阅读(16) 评论(0) 推荐(0)
摘要: Linux常用命令 基本操作命令 命令补全 值得特别提醒的是假如我们输入了一个命令例如cd /etc/但是忘记下面要打开什么文件,这时候我们加入两个tab键cd /etc/[tab][tab]就能够显示当前目录下所有目录,然后输入我们想要进入的目录。如果你能够确定当前目录下只有一个文件或目录cd / 阅读全文
posted @ 2024-07-21 11:34 LemHou 阅读(111) 评论(0) 推荐(0)
摘要: MySQL数据库 操纵数据库 查看数据库 show databases; 创建数据库 create database <database_name>; 删除数据库 drop database <database_name>; 使用数据库 use mysql 操纵数据表 查看数据表 show tabl 阅读全文
posted @ 2024-07-21 11:09 LemHou 阅读(16) 评论(0) 推荐(0)
摘要: 多线程并发锁 包括自旋锁、互斥锁、无锁 POSIX接口 posix接口提供linux下线程操作库,posix默认生成的线程占用8M空间 pthread_create线程创建函数 pthread_create(pthread_t *th, const pthread_attr_t *attr, voi 阅读全文
posted @ 2024-07-21 09:03 LemHou 阅读(10) 评论(0) 推荐(0)
摘要: MySQL数据库 操纵数据库 查看数据库 show databases; 创建数据库 create database <database_name>; 删除数据库 drop database <database_name>; 使用数据库 use mysql 操纵数据表 查看数据表 show tabl 阅读全文
posted @ 2024-07-19 21:37 LemHou 阅读(20) 评论(0) 推荐(0)