fix the compilation on Windows and macOS

This commit is contained in:
Krasimir Angelov
2022-06-29 21:40:51 +02:00
parent 88477a8834
commit 46a9a8f07d

View File

@@ -388,7 +388,8 @@ PgfDB::~PgfDB()
#ifndef MREMAP_MAYMOVE
if (fd < 0) {
pthread_rwlock_destroy(&ms->rwlock);
pthread_mutex_destroy(&ms->mutex);
pthread_mutex_destroy(&ms->write_mutex);
pthread_mutex_destroy(&ms->rel_mutex);
::free(ms);
::free(base);
} else
@@ -1674,6 +1675,7 @@ void PgfDB::resize_map(size_t new_size)
if ((res = pthread_rwlock_unlock(&ms->rwlock)) != 0)
throw pgf_systemerror(res);
#else
while(true) {
while(true) {
temp = ms->rwlock;
assert(Writer(temp));
@@ -1688,6 +1690,7 @@ void PgfDB::resize_map(size_t new_size)
//Decrement writer count
if (InterlockedCompareExchange(&ms->rwlock, SetWriter(temp, false), temp) == temp)
break;
}
#endif
}