当前位置: 首页 > article >正文

Linux 之 信号量

Linux 之 信号量

正文

sem_init函数
sem_destroy函数
sem_wait函数
sem_trywait函数
sem_timedwait函数
sem_post函数
以上6 个函数的返回值都是:成功返回0, 失败返回-1,同时设置errno。(注意,它们没有pthread前缀)

sem_init

int sem_init(sem_t *sem, int pshared, unsigned int value);
参数:
sem:信号量
pshared:取0用于线程间;取非0(一般为1)用于进程间
value:指定信号量初值

sem_destroy

int sem_destroy(sem_t *sem);

sem_wait

int sem_wait(sem_t *sem);

若信号量值>0,对其-1,为0阻塞。

sem_trywait

int sem_trywait(sem_t *sem);
若信号量值>0,对其-1,为0直接返回。

sem_timedwait

int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout);
若信号量值>0,对其-1,为0阻塞,超时返回。

sem_post

int sem_post(sem_t *sem);
对信号量值+1。

#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
#include<string.h>
#include<sys/stat.h>
#include<sys/types.h>
http://www.lryc.cn/news/2416071.html

相关文章:

  • webservice 安全和加密的方法
  • 【程序员侠】李飞往事之键盘侠刘一刀
  • 败家MM
  • C语言设计模式
  • C语言10个经典小程序——小白必备!
  • 探索一种C++二进制模块的热更新机制
  • alexa安装后不能显示工具条的方法
  • 理解Engine in Database
  • 操作系统期末复习题库(含答案)
  • PHP从基础到高级详细教程(完整版)_php高级教程(2)
  • CSS保姆级教程(四)(DIV+CSS实践:第一个网页开发)
  • 线性规划(基本原理+例题解析)
  • 测试网络质量常用的四条命令
  • 【竞赛篇-杭创】杭州市大学生创业大赛参赛经验
  • visual studio 2008试用版的评估期29天后结束 解决办法
  • 【中创】壹起共享“免费”网络资源库-持续更新中
  • VLAN tag
  • Flash Lite 2.0 新功能介绍
  • Java中的Annotation解析(二)
  • windows系统实现自动登录
  • 用我所用,弃我所弃——Windows XP服务详解
  • linux系统css样式加载不出,Linux系统虚拟主机网站访问页面css样式文件加载失败或图片无法显示的分析解决...
  • 从零开始学安卓(kotlin)一 ——入门
  • 白嫖1000道面试题,看完哑巴都能面过
  • JavaScript 游戏构建指南(一)
  • Python实现21点游戏教程:掌握Python编程,创建自己的21点游戏,附带源码示例
  • 本地发博客的技巧
  • bat批处理文件命令之文件格式问题
  • Archlinux安装与美化全流程
  • .net弹出窗口详解