
线程
Folllll
这个作者很懒,什么都没留下…
展开
-
在同一个进程内的线程共享资源和私有资源
在同一个进程中的线程共享: 线程是轻量级的,没有自己独立的内存资源如:代码段、全局数据段、静态数据段、栈区、堆区、命令行参数、文件描述符、信号处理函数等。 线程私有: 线程拥有的独立资源是栈内存,也就是线程有自己独立的局部变量、线程ID。 ...原创 2021-03-19 20:23:16 · 1233 阅读 · 0 评论 -
生产者消费者模型——C语言代码详解
概念 生产者消费者模式就是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取,阻塞队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力。这个阻塞队列就是用来给生产者和消费者解耦的。 321原则 三种角色:生产者、消费者、仓库 两种关系:生产者与生产者之间是互斥关系,消费者与消费者之间是互斥关系,生产者与消费者之间是同步与互斥关系。 一个交易场转载 2021-03-17 20:52:29 · 5816 阅读 · 0 评论 -
【新手入门向 浅显易懂】分别用栈和队列实现生产者与消费者模型
栈实现模型: #include <stdio.h> #include <stdlib.h> #include <time.h> #include <unistd.h> #include <pthread.h> *// 仓库容量* #define STORE_SIZE (20) *// 仓库* char store[STORE_SIZE]; *// 数量* size_t store_cnt = 0; pthread_mutex_t lock; pt原创 2020-12-16 20:03:59 · 142 阅读 · 0 评论