logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【Linux】线程互斥与同步_同步(2)_环形队列

本文介绍了Linux系统中POSIX信号量的使用方法及其在线程同步中的应用。主要内容包括: POSIX信号量接口说明: sem_init/destroy用于初始化和销毁信号量 sem_wait实现P操作(信号量-1) sem_post实现V操作(信号量+1) 基于环形队列的生产者消费者模型实现: 使用两个信号量分别表示数据数量和空格数量 生产者通过P操作申请空格资源,V操作释放数据资源 消费者通过

文章图片
#linux#运维#服务器
【Linux】线程同步与互斥_同步(1)

本文介绍了Linux系统中线程同步的相关概念,重点讲解了生产者消费者模型(CP模型)及其实现机制。文章首先阐述了线程饥饿和线程同步的基本概念,通过超市购物的类比解释了CP模型的三个核心关系(生产者-生产者互斥、消费者-消费者互斥、生产者-消费者同步+互斥)及其解耦、并发和削峰填谷三大优势。 随后详细介绍了条件变量这一关键同步工具,解释了其"铃铛+等待队列"的工作机制如何解决线程

文章图片
#linux
【Linux】线程同步与互斥_同步(1)

本文介绍了Linux系统中线程同步的相关概念,重点讲解了生产者消费者模型(CP模型)及其实现机制。文章首先阐述了线程饥饿和线程同步的基本概念,通过超市购物的类比解释了CP模型的三个核心关系(生产者-生产者互斥、消费者-消费者互斥、生产者-消费者同步+互斥)及其解耦、并发和削峰填谷三大优势。 随后详细介绍了条件变量这一关键同步工具,解释了其"铃铛+等待队列"的工作机制如何解决线程

文章图片
#linux
【c语言】scanf函数详解(基础)

简述:scanf是scan format的缩写,意思为格式化扫描。scanf()函数用于读取用户的键盘输入,它的原型定义在头文件里。scanf函数处理⽤⼾输⼊的原理是,⽤⼾的输⼊先放⼊缓存,等到按下回⻋键后,再根据占位符对缓存进⾏解读。解读时,它会从上⼀次解读所遗留的第⼀个字符开始,直到读完缓存,或者遇到第⼀个不符合条件的字符为⽌。

文章图片
#c语言
【c++】异常与智能指针

本文介绍了C++异常处理和智能指针的关键知识点。异常是处理错误的方式,通过throw抛出对象并由catch捕获处理。但异常可能导致内存泄漏,智能指针通过RAII设计思想解决这一问题。C++标准库提供了多种智能指针:auto_ptr(已弃用)、unique_ptr(独占所有权)、shared_ptr(共享所有权)和weak_ptr(解决循环引用)。文章详细讲解了它们的特性、使用场景及底层实现原理,包

文章图片
#c++#android
到底了