linux互斥操作——信号量
2012-04-18 22:48
190 查看
简单的互斥操作:
#include<stdio.h> #include<unistd.h> #include<stdlib.h> #include<stdlib.h> #include<sys/types.h> #include <sys/ipc.h> #include<sys/sem.h> int p(int sem_id) { struct sembuf sb; sb.sem_num=0; sb.sem_op=-1; sb.sem_flg=SEM_UNDO; if(semop(sem_id,&sb,1)==-1) return 0; return 1; } int v(int sem_id) { struct sembuf sb; sb.sem_num=0; sb.sem_op=1; sb.sem_flg=SEM_UNDO; if(semop(sem_id,&sb,1)==-1) return 0; return 1; } int main() { int sem_id; if((sem_id=semget(IPC_PRIVATE,1,0)) == -1) exit(-1); p(sem_id); //do something v(sem_id); }
相关文章推荐
- 07-S3C2440驱动学习(一)嵌入式linux字符设备驱动-按键驱动程序之异步通知机制+原子操作+互斥信号量+阻塞与非阻塞+定时器去抖
- [Linux]互斥机制(中断屏蔽、原子操作、自旋锁、信号量)
- 线程同步(信号量,互斥,条件变量) 分类: linux应用程序 2008-04-08 09:43 2587人阅读 评论(1) 收藏 举报 进行多线程编程,最头疼的就是那些共享的数据。因为你无法知道哪个线程会在哪个时候对它进行操作,你也无法
- arm驱动程序——按键程序6_互斥1—原子操作(韦东山的视频总结及针对linux-2.6.30)
- arm驱动程序——按键程序6_互斥—信号量(韦东山的视频总结及针对linux-2.6.30)
- <linux进程>POSIX有名信号量基本操作
- 【ARM&Linux】Linux信号量互斥编程
- linux__mutex互斥锁___操作
- Linux入门:线程同步与互斥(三)——信号量
- arm驱动程序——按键程序6_互斥—信号量(韦东山的视频总结及针对linux-2.6.30)
- 【Linux】线程总结:线程同步 -互斥锁,条件变量,信号量实现多生产者多消费者模型
- 讲Linux下面线程的操作、多线程的同步和互斥相关函数及操作的文章链接
- linux 多线程编程 之 信号量互斥同步
- Linux基础:信号量和互斥的联系与区别
- linux内核情景分析之内核中的互斥操作
- linux进程间的通信机制--信号量互斥
- LINUX 信号量操作
- 原子操作 信号量 自旋锁 互斥锁
- Linux下原子操作(信号量 自旋锁)的实现原理和底层代码分析
- linux下的信号量操作示例