*fonction msgListLock
This commit is contained in:
parent
6e55ca4e6d
commit
6272f135ed
1 changed files with 72 additions and 25 deletions
|
@ -29,11 +29,51 @@ int msgSpaceListElemLinkNext(msgSpaceListElemId current,msgSpaceListElemId next)
|
||||||
int msgSpaceListAdd(msgSpaceListElemId );
|
int msgSpaceListAdd(msgSpaceListElemId );
|
||||||
int msgSpaceListRem(msgSpaceListElemId spaceId);
|
int msgSpaceListRem(msgSpaceListElemId spaceId);
|
||||||
|
|
||||||
|
char *spaceList;
|
||||||
|
|
||||||
void *add(char * idAncien, char *idNouveau);
|
int msgSpaceListLock(){
|
||||||
int descMemory;
|
char *spaceList;
|
||||||
|
/*Pose d'un semafore*/
|
||||||
|
sem_t * sem;
|
||||||
|
|
||||||
void * add(char * idAncien, char *idNouveau){
|
if((int)sem=sem_open(spaceList,O_CREAT|O_EXCL, 0666,10) ==-1){
|
||||||
|
printf("erreur de semaphore");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(sem_wait(sem)==-1){
|
||||||
|
printf("erreur pour l'ajout d'un semaphore");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*int msgSpaceListUnlock(){
|
||||||
|
Ferme le semaphore
|
||||||
|
int semClose;
|
||||||
|
if(semClose=sem_close(spaceList) )==-1{
|
||||||
|
printf("erreur");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
};
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*void *add(char * idAncien, char *idNouveau);
|
||||||
|
int descMemory;
|
||||||
|
|
||||||
|
void * add(char * idAncien, char *idNouveau){
|
||||||
descMemory=shm_open("/titi",
|
descMemory=shm_open("/titi",
|
||||||
O_RDWR|O_CREAT|O_EXCL|O_TRUNC,
|
O_RDWR|O_CREAT|O_EXCL|O_TRUNC,
|
||||||
0600);
|
0600);
|
||||||
|
@ -47,21 +87,28 @@ void * add(char * idAncien, char *idNouveau){
|
||||||
printf("erreur ftruncate");
|
printf("erreur ftruncate");
|
||||||
}
|
}
|
||||||
|
|
||||||
/* memory= mmap(0, 1024,
|
memory= mmap(0, 1024,
|
||||||
PROT_READ | PROT_WRITE,
|
PROT_READ | PROT_WRITE,
|
||||||
|
|
||||||
|
|
||||||
MAP_SHARED, mSFd, 0)*/
|
MAP_SHARED, mSFd, 0)*/
|
||||||
|
/*typedef struct MsgSpaceListElem {
|
||||||
|
void * id;
|
||||||
|
int ownerPid;
|
||||||
|
msgSpaceListElemId next;
|
||||||
|
} * msgSpaceList, msgSpaceListElem;
|
||||||
|
|
||||||
/* if( Strcpy(idAncien, idNouveau) ==-1){
|
msgSpaceListElemId *mslist;
|
||||||
|
|
||||||
|
if( Strcpy(idAncien, idNouveau) ==-1){
|
||||||
printf("erreur de strcpy");
|
printf("erreur de strcpy");
|
||||||
};*/
|
};
|
||||||
|
|
||||||
strcpy(idAncien, idNouveau);
|
strcpy(idAncien, idNouveau);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue