互斥锁(加锁和解锁操作)
来源:互联网 发布:天互数据在哪 编辑:程序博客网 时间:2024/05/16 06:08
#include<stdio.h>#include<stdlib.h>#include<string.h>#include<unistd.h>#include<sys/types.h>#include<pthread.h>/* 互斥锁 */unsigned int value1, value2, count;pthread_mutex_t mutex;void *fun(void *arg);int main(){ pthread_t thread; if (0 > pthread_mutex_init(&mutex, NULL)) // 初始化 { perror("pthread_mutex_init"); exit(-1); } if (0 > pthread_create(&thread, NULL, fun, NULL)) { perror("pthread_create"); exit(-1); } while(1) { count++; #if 1 pthread_mutex_lock(&mutex);// 加锁 #endif value1 = count; value2 = count; #if 1 pthread_mutex_unlock(&mutex);// 解锁 #endif } return 0;}void *fun(void *arg){ while(1) { #if 1 pthread_mutex_lock(&mutex); #endif if (value1 != value2) { printf("count = %d,value1 = %d value2 = %d\n", count, value1, value2); usleep(100000); } #if 1 pthread_mutex_unlock(&mutex); #endif } return NULL;}
阅读全文
0 0
- 互斥锁(加锁和解锁操作)
- PHP加锁解锁操作
- InnoDB 解锁和加锁(死锁)问题
- SAP ABAP 加锁和解锁
- SAP ABAP 加锁和解锁
- java的加锁和解锁
- java并发编程--AbstractQueuedSynchronizer加锁和解锁分析(二)
- 线程的加锁和解锁,防止多个用户操作一个方法
- 自动加锁类和自动解锁类
- oracle数据库用户加锁和解锁
- AIX 用户帐户的加锁和解锁
- mutex加锁和解锁性能测试
- 给oracle数据库用户加锁和解锁
- oracle数据库用户加锁和解锁
- UNIX操作系统中加锁和解锁
- SAP ABAP 加锁和解锁实例
- linux c复习:文件操作(文件锁:加锁以及解锁)
- Linux下互斥量加锁与解锁操作的C代码实现
- 关于C-COT的一些想法 by小白
- ios-VFL语言
- URI与URL,Android中的Uri的区别
- ubuntu下执行mysql脚本
- spring-cloud-eureka-client之spring-cloud-1.3.4(Dalston.SR3)-boot(1.5.6) 学习笔记
- 互斥锁(加锁和解锁操作)
- eclipse for python
- 仿制一个简单的聊天软件
- 【第二周】项目1
- java Web应用
- iOS【YTKNetwork源码解析】
- 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 E. Maximum Flow(最大流/规律)
- Unity Shader 内置函数
- CSS3之创建3D场景