mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-07-23 10:35:03 +00:00
28 lines
543 B
C++
28 lines
543 B
C++
// SPDX-FileCopyrightText: Copyright 2024 shadPS4 Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
#pragma once
|
|
|
|
#ifdef __linux__
|
|
#include <pthread.h>
|
|
#endif
|
|
|
|
namespace Common {
|
|
|
|
#ifdef PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
|
|
class AdaptiveMutex {
|
|
public:
|
|
void lock() {
|
|
pthread_mutex_lock(&mutex);
|
|
}
|
|
void unlock() {
|
|
pthread_mutex_unlock(&mutex);
|
|
}
|
|
|
|
private:
|
|
pthread_mutex_t mutex = PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP;
|
|
};
|
|
#endif // PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
|
|
|
|
} // namespace Common
|