Unix线程,互斥量,确保同一时间只有一个线程访问数据
来源:互联网 发布:linux ping的使用 编辑:程序博客网 时间:2024/06/05 16:43
#include<stdlib.h>
#include<pthread.h>
struct foo{
int f_count;
pthread_mutex_t f_lock;
};
struct foo * foo_alloc(void)
{
struct foo *fp;
if((fp=malloc(sizeof(struct foo)))!=NULL){
fp->f_count=1;
if(pthread_mutex_init(&fp->f_lock.NULL)!=0){
free(fp);
return (NULL);
}
}
return (fp);
}
void foo_hold(struct foo *fp)
{
pthread_mutex_lock(&fp->f_lock);
fp->f_count++;
pthread_mutex_unlock(&fp->f_lock);
}
void foo_release(struct foo *fp)
{
pthread_mutex_lock(&fp->f_lock);
if( - - fp->f_count==0)//类似于OC里的内存释放
{
pthread_mutex_unlock(&fp->f_lock);
pthread_mutex_destrory(&fp->f_lock);
free(fp);
}
else
{
pthread_mutex_unlock(&fp->f_lock);
}
}
- Unix线程,互斥量,确保同一时间只有一个线程访问数据
- 清空临时文件-确保只有一个清空线程
- unix 线程私有数据
- Unix/Linux创建一个线程
- 单例模式--确保一个类只有一个实例,并提供一个全局访问点。
- unix练习-线程互斥量
- 如何确保某一个文件只允许一个线程打开解决办法
- 如何同一时间一个帐号只有一个用户使用?(asp.net)
- 如何同一时间一个帐号只有一个用户使用?(asp.net)
- 如何同一时间一个帐号只有一个用户使用
- 如何同一时间一个帐号只有一个用户使用?(asp.net)
- 如何同一时间一个帐号只有一个用户使用
- 如何同一时间一个帐号只有一个用户使用
- MFC 确保一个程序只有一个进程
- 让php程序同一时间最多只有一个工作
- 使用flock保证同一时间只有一个脚本在运行
- UNIX线程
- UNIX线程
- select,epoll,poll比较
- axis2 webservice学习笔记二
- IOS开发问题记录(2012/11/19)
- Linux 入门笔记(三)
- CF 107D 【矩阵快速幂】
- Unix线程,互斥量,确保同一时间只有一个线程访问数据
- [Win32][C++]编码转换
- Storyboard
- Windows API函数大全
- Android 开发常用代码片段
- 用SimpleTagSupport类开发自定义标签
- scanf()/getchar()和gets()读入字符和字符串的详细讲解
- 关于ActionContex相关知识介绍
- MVC范型等