信号量学习

技术信号量学习 信号量学习(一)概念信号量是一个整数,这个整数允许多进程或多线程同步他们的操作。这个整数必须大于等于0.
linux库函数中,类似有名映射、匿名映射,有名管道、无名管道,信号量也有有名信

信号量学习

(一)概念

信号量是一个整数,它允许多个进程或线程同步它们的操作。该整数必须大于或等于0。

在linux库函数中,有类似的命名映射、匿名映射、命名管道和未命名管道。信号量也有命名信号量和匿名信号量。匿名信号量在内存中,而不是在文件系统中,通常用于线程之间的同步。命名信号量需要创建文件,这些文件通常用于进程之间的同步。命名信号量请参见:命名信号量。

(2)匿名信号量库函数

#包含信号量. h

int sem_init(sem_t *sem,int pshared,无符号int值);

函数:初始化一个匿名信号量。

参数:

Sem指定要初始化的信号量的地址。

P 0多线程非0多进程

值指定信号量的初始值。

返回值:

0成功

错误-设置了1个错误号

#包含信号量. h

int SEM _ destroy(SEM _ t * SEM);

函数:破坏了一个匿名信号量。

参数:

Sem指定要销毁的匿名信号量的地址

返回值:

0成功

错误-设置了1个错误号

#包含信号量. h

int SEM _ post(SEM _ t * SEM);

函数:给信号量的值加1。如果它变得大于0。如果等待信号量值变得大于0的进程或线程被唤醒,继续从信号量值中减去1。

参数:

Sem指定了特定的信号量

返回值:

0成功

错误-1 errno被设置为相同的信号量值。

#包含信号量. h

int SEM _ wait(SEM _ t * SEM);

如果当前信号的值大于0,继续立即返回。

如果当前信号量值等于0。阻塞,直到信号量值大于0。

参数:

Sem指定了特定的信号量

返回值:

0成功

错误-1 errno被设置为相同的信号量值。

int SEM _ try wait(SEM _ t * SEM);

功能:尽量不阻塞等待。

int sem_timedwait(sem_t *sem,const struct time spec * ABS _ time out);

功能:与时间一起等待

参考博客:https://blog.csdn.net/u013511885/article/details/03116998 UTM _ medium=distribute . PC _ agg page _ search _ result . none-task-blog-2 ~聚合页面~ first _ rank _ ecpm _ v1 ~ rank _ v31 _ ecpm-3-103116998 . PC _ agg _ new

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/117954.html

(0)

相关推荐

  • C++为什么不要拿着锁调用未知代码

    技术C++为什么不要拿着锁调用未知代码本篇内容主要讲解“C++为什么不要拿着锁调用未知代码”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++为什么不要拿着锁调用未知代码”吧

    攻略 2021年11月25日
  • 我最喜欢的一本书英语作文,我最喜欢的故事书英语范文

    技术我最喜欢的一本书英语作文,我最喜欢的故事书英语范文My Favorite Book Harry Potter Do you know Harry Potter? Its one of my favorite read

    生活 2021年10月28日
  • css3动画图片旋转效果(css3动画的初始旋转角度)

    技术css3如何实现一个旋转的动画本篇内容介绍了“css3如何实现一个旋转的动画”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有

    攻略 2021年12月16日
  • scrapy数据存储在mysql数据库的方式是什么

    技术scrapy数据存储在mysql数据库的方式是什么scrapy数据存储在mysql数据库的方式是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能

    攻略 2021年12月4日
  • 解决在PDF文档中复制代码报错问题

    技术解决在PDF文档中复制代码报错问题 解决在PDF文档中复制代码报错问题现在我们做学习笔记最好用的就是markdown,笔记做好以后可以导出PDF文档,但是当我们复制PDF文档的代码直接拷贝到 IDE

    礼包 2021年12月10日
  • 使用逻辑分析仪时如何防止寄存器和线路信号被优化

    技术如何防止reg、wire型信号在使用逻辑分析仪时被优化如何防止reg、wire型信号在使用逻辑分析仪时被优化,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题

    攻略 2021年12月23日