static void monitor_pthread_destroy (p_lock_t *plock) { p_lock_t lock = *plock; if (lock) { RWLOCK_DESTROY (&(lock->mutex)); free (lock); } *plock = NULL; }
void dmap_close(DMAP *dmap) { if(dmap) { if(dmap->state) munmap(dmap->state, dmap->msize); if(dmap->fd) close(dmap->fd); if(dmap->vmap) munmap(dmap->vmap, dmap->vmsize); if(dmap->vfd) close(dmap->vfd); RWLOCK_DESTROY(dmap->rwlock); free(dmap); } return ; }
void lkv_close(LKV *lkv) { if(lkv) { if(lkv->state) munmap(lkv->state, lkv->msize); if(lkv->fd) close(lkv->fd); if(lkv->vmap) munmap(lkv->vmap, lkv->vmsize); if(lkv->vfd) close(lkv->vfd); RWLOCK_DESTROY(lkv->rwlock); free(lkv); } return ; }
void imap_close(IMAP *imap) { if(imap) { if(imap->state) munmap(imap->state, imap->msize); if(imap->fd) close(imap->fd); if(imap->vmap) munmap(imap->vmap, imap->vmsize); if(imap->vfd) close(imap->vfd); RWLOCK_DESTROY(imap->rwlock); free(imap); } return ; }