Merge pull request #11279 from taosdata/feature/shm

remove shm
This commit is contained in:
Shengliang Guan 2022-04-07 14:21:17 +08:00 committed by GitHub
commit cbc76dbad8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
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) { int32_t taosCreateShm(SShm* pShm, int32_t key, int32_t shmsize) {
pShm->id = -1; pShm->id = -1;
#if 1
key_t __shkey = IPC_PRIVATE; key_t __shkey = IPC_PRIVATE;
int32_t __shmflag = IPC_CREAT | IPC_EXCL | 0600; int32_t __shmflag = IPC_CREAT | IPC_EXCL | 0600;
#else
// key_t __shkey = 0X95270000 + key; key_t __shkey = 0X95270000 + key;
// int32_t __shmflag = IPC_CREAT | 0600; int32_t __shmflag = IPC_CREAT | 0600;
#endif
int32_t shmid = shmget(__shkey, shmsize, __shmflag); int32_t shmid = shmget(__shkey, shmsize, __shmflag);
if (shmid < 0) { if (shmid < 0) {
@ -53,10 +55,14 @@ int32_t taosCreateShm(SShm* pShm, int32_t key, int32_t shmsize) {
pShm->size = shmsize; pShm->size = shmsize;
pShm->ptr = shmptr; pShm->ptr = shmptr;
#if 0
if (key >= 0 && key < MAX_SHMIDS) { if (key >= 0 && key < MAX_SHMIDS) {
shmids[key] = pShm->id + 1; shmids[key] = pShm->id + 1;
} }
atexit(taosDeleteCreatedShms); atexit(taosDeleteCreatedShms);
#else
shmctl(pShm->id, IPC_RMID, NULL);
#endif
return 0; return 0;
} }