Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Loading...
Searching...
No Matches
SharedMutex.h
Go to the documentation of this file.
1/*
2* This file is part of Project SkyFire https://www.projectskyfire.org.
3* See LICENSE.md file for Copyright information
4*/
5
6#ifndef SKYFIRE_SHAREDMUTEX_H
7#define SKYFIRE_SHAREDMUTEX_H
8
9#if COMPILER == COMPILER_MICROSOFT && _MSC_VER >= 1900
10#include <shared_mutex>
11#define SF_SHARED_MUTEX std::shared_mutex
12#define SF_SHARED_GUARD std::shared_lock<std::shared_mutex>
13#define SF_UNIQUE_GUARD std::unique_lock<std::shared_mutex>
14#else
15#include <mutex>
16#define SF_SHARED_MUTEX std::mutex
17#define SF_SHARED_GUARD std::lock_guard<std::mutex>
18#define SF_UNIQUE_GUARD std::unique_lock<std::mutex>
19#endif
20
21#endif