摘要: ## 一、IO设备操作介绍 The QIODevice class is the base interface class of all I/O devices in Qt.QIODevice provides both a common implementation and an abstract 阅读全文
posted @ 2023-05-28 21:31 shubin 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 引言 在使用socket编程时,我们会用到accept、connect、recv、send等函数,这些函数在没有数据到达时,会阻塞等待IO数据的到达。 这不利于我们处理多个连接并快速响应。一种方案是,服务端每accept一个连接,就创建一个新的线程用来处理这个连接。这会导致线程过多, 而且线程之前切 阅读全文
posted @ 2023-05-10 20:46 shubin 阅读(26) 评论(0) 推荐(0) 编辑
摘要: epoll基本原理 epoll 相对于 select 与 poll 有较大的不同,主要是针对前面两种多路复用 IO 接口的不足 与 select/poll 方案对比 select 方案使用数组存储文件描述符,最大支持 1024 select 每次调用都需要将描述符集合拷贝到内核中,非常消耗资源 po 阅读全文
posted @ 2023-05-07 17:33 shubin 阅读(101) 评论(0) 推荐(0) 编辑
摘要: Pad模板 在 GStreamer 中,Pad 模板(Pad Template)共有两种类型:静态 Pad 模板(Static Pad Template)和动态 Pad 模板(Dynamic Pad Template)。 静态 Pad 模板是在元素的代码中预定义的,它描述了 Pad 的名称、方向、数 阅读全文
posted @ 2023-04-21 13:48 shubin 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 阻塞IO和非阻塞IO IO 本质是基于操作系统接口来控制底层的硬件之间数据传输,并且在操作系统中实现了多种不同的IO的方式(模型) IO 模型描述的是不同的 IO 方式,比较常用的几种 阻塞型 IO 模型9 非阻塞型 IO 模型 多路复用 IO 模型 阻塞型 IO 当进程发出 IO 请求后,阻塞进程 阅读全文
posted @ 2023-04-09 19:29 shubin 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 线程的概念 线程的概念 线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程 一个进程中是可以有多个线程 多个线程共享同一个进程的所有资源,每个线程参与操作系统的统一调度 可以简单理解成 进程 = 内存资源 + 主线程 + 子线 + ....... 1.2 线程与进程 线程 阅读全文
posted @ 2023-04-06 11:15 shubin 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 资源竞争 资源竞争:当多个进程在同时访问共享资源时,会产生资源竞争,最终最导致数据混乱 临界资源:不允许同时有多个进程访问的资源,包括硬件资源(CPU、内存、存储器以及其他外围设备)与软件资源(共享代码段、共享数据结构) 临界区:访问临界资源代码 多进程对 stdout 资源的竞争 #include 阅读全文
posted @ 2023-04-04 18:27 shubin 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 共享内存介绍 共享内存是将分配的物理空间直接映射到进程的用户虚拟地址空间中,减少数据在内核空间缓存 共享内存是一种效率较高的进程间通讯的方式 在 Linux 系统中通过 ipcs -m 查看所有的共享内存 共享内存模型 共享内存创建 创建共享内存调用 shmget() 函数 函数头文件 #inclu 阅读全文
posted @ 2023-04-03 20:36 shubin 阅读(27) 评论(0) 推荐(0) 编辑
摘要: System V IP IPC : Inter-Process Communication (进程间通讯) System V 是早期的unix 系统,曾经被称为 AT & T System ,是 unix 操作系统中比较重要的一个分支,现在Linux 系统一般都支持 System V IPC Sys 阅读全文
posted @ 2023-04-03 17:29 shubin 阅读(62) 评论(0) 推荐(0) 编辑
摘要: System V IPC IPC : Inter-Process Communication(进程间通讯) System V 是早期的unix 系统,曾经被称为 AT &T System ,是 unix 操作系统中比较重要的一个分支,现在0Linux 系统一般都支持 System V IPC Sys 阅读全文
posted @ 2023-04-03 15:46 shubin 阅读(45) 评论(0) 推荐(0) 编辑