当前位置: 技术问答>linux和unix
问一个关于Linux下共享内存的问题?shm_族函数的用法
来源: 互联网 发布时间:2016-12-16
本文导语: 问题是这个样子的,在磁盘上有个一个文件要供多个进程读写。 所以我想在这多个进程之间提供一把互斥锁。采用的思路是将 pthread_mutex_t 的互斥量映射到共享内存,使得这个互斥量 在多个进程之间共享,从而实现...
问题是这个样子的,在磁盘上有个一个文件要供多个进程读写。
所以我想在这多个进程之间提供一把互斥锁。采用的思路是将
pthread_mutex_t 的互斥量映射到共享内存,使得这个互斥量
在多个进程之间共享,从而实现加锁的功能。
有问题的代码在下面:
所以我想在这多个进程之间提供一把互斥锁。采用的思路是将
pthread_mutex_t 的互斥量映射到共享内存,使得这个互斥量
在多个进程之间共享,从而实现加锁的功能。
有问题的代码在下面:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
#define handle_error(msg)
do { perror(msg); exit(EXIT_FAILURE); } while (0)
void init_lock();
void get_lock();
void release_lock();
pthread_mutex_t *mutex_ptr;
void * share_mem=(void *)0;
int main()
{
init_lock();
get_lock();
ofstream out("my_file",ios::out|ios::app);
for(int i=0;i!=5;++i)
out