remove shm

This commit is contained in:
Shengliang Guan 2022-04-07 13:53:19 +08:00
parent c1a8779544
commit 6318cc7a1a
1 changed files with 9 additions and 3 deletions

View File

@ -33,11 +33,13 @@ static void taosDeleteCreatedShms() {
int32_t taosCreateShm(SShm* pShm, int32_t key, int32_t shmsize) {
pShm->id = -1;
#if 1
key_t __shkey = IPC_PRIVATE;
int32_t __shmflag = IPC_CREAT | IPC_EXCL | 0600;
// key_t __shkey = 0X95270000 + key;
// int32_t __shmflag = IPC_CREAT | 0600;
#else
key_t __shkey = 0X95270000 + key;
int32_t __shmflag = IPC_CREAT | 0600;
#endif
int32_t shmid = shmget(__shkey, shmsize, __shmflag);
if (shmid < 0) {
@ -53,10 +55,14 @@ int32_t taosCreateShm(SShm* pShm, int32_t key, int32_t shmsize) {
pShm->size = shmsize;
pShm->ptr = shmptr;
#if 0
if (key >= 0 && key < MAX_SHMIDS) {
shmids[key] = pShm->id + 1;
}
atexit(taosDeleteCreatedShms);
#else
shmctl(pShm->id, IPC_RMID, NULL);
#endif
return 0;
}