浅析Linux下一个简单的多线程互斥锁的例子
2023-06-13 09:15:03 时间
#include<stdio.h>
#include<pthread.h>
pthread_mutex_tDevice_mutex;
intcount=0;
voidthread_func1()
{
while(1)
{
pthread_mutex_lock(&Device_mutex);
printf("thread1:%d\n",count);
pthread_mutex_unlock(&Device_mutex);
count++;
sleep(1);
}
}
voidthread_func2()
{
while(1)
{
pthread_mutex_lock(&Device_mutex);
printf("thread2:%d\n",count);
pthread_mutex_unlock(&Device_mutex);
count++;
sleep(1);
}
}
intmain()
{
pthread_tthread1,thread2;
pthread_mutex_init(&Device_mutex,NULL);
if(pthread_create(&thread1,NULL,(void*)thread_func1,NULL)==-1)
{
printf("createIP81Threaderror!\n");
exit(1);
}
sleep(1);
if(pthread_create(&thread2,NULL,(void*)thread_func2,NULL)==-1)
{
printf("createIP81_2Threaderror!\n");
exit(1);
}
sleep(1);
pthread_join(thread1,NULL);
pthread_join(thread2,NULL);
pthread_mutex_destroy(&Device_mutex);
return0;
}
相关文章
- 解压Linux文件:简单命令指南(linux解压命令)
- 借助PXE启动Linux系统:配置简单快捷(pxe启动linux)
- Linux极致影院:让看电影变得更简单(linux在线看电影)
- 如何在Linux系统上安装软件包(怎么安装linux的包)
- Linux权限管理222:实现系统安全(linux权限222)
- 文件Linux从FTP服务器下载文件的简单指南.(linux从ftp下载)
- Linux设置默认目录:简单几步即可完成(linux设置默认目录)
- Linux 终端:发现隐藏奥秘的乐趣(linux终端好玩)
- Linux实现多网关多路径设置(linux多网关设置)
- 学习Linux下mv命令简单操作(linux中mv命令)
- 驾驭Linux网络多线程编程之道(linux网络多线程编程)
- Linux桥接模式:把网络隔离变得更简单(linux的桥接模式)
- Linux查看环境变量的简单步骤(linux显示环境变量)
- 系统 Linux的分支系统: 开拓未来世界(linux的分支)
- Linux的分支:开放的操作系统之旅(linux的分支)
- Linux环境下配置SNMP服务(linux配置snmp)
- Linux下批量重命名文件的简单操作(批量重命名linux)
- Linux脚本学习:FTP文件传输(linux脚本ftp)
- Linux实现多线程:提升效率的必经之路(linux多线程实现)
- Linux下简单搭建SVN服务器(linux搭建svn服务器)
- Linux强制格式化:简单实用的方法(linux强制格式化)
- Linux系统:简单易懂的格式化指南(linux系统怎样格式化)
- 如何在Linux系统下手动配置IP地址?简单易学的方法。(linux手动配置ip)
- 使用Linux 实现中间件利器(中间件linux)
- Linux磁盘检测:提升系统性能的不二之选(linux磁盘检测)
- Linux 日常维护:保障系统安全运行(linux日常维护)
- 简单高效,轻松计算——Linux小型计算器实用指南(linux小型计算器)
- 教你轻松更改Linux文件系统(linux更改文件系统)
- 简单易懂的Linux编译命令指南:25个必备关键字(linux编译命令)
- 「轻松看懂!」Linux数据绘图,教你用最简单的方式展现数据!(linux数据绘图)
- 使用百度云轻松下载 Linux 系统:简单操作,高速稳定(百度云linux下载)
- Linux下高效拷贝目录的简单方法(linux 拷贝目录)
- Linux 安装指南:简单快捷步骤获取自由之美(linux 安装码)