// Copyright 2013 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef FLUTTER_FML_SYNCHRONIZATION_SHARED_MUTEX_POSIX_H_ #define FLUTTER_FML_SYNCHRONIZATION_SHARED_MUTEX_POSIX_H_ #include #include "flutter/fml/synchronization/shared_mutex.h" namespace fml { class SharedMutexPosix : public SharedMutex { public: virtual void Lock(); virtual void LockShared(); virtual void Unlock(); virtual void UnlockShared(); private: friend SharedMutex* SharedMutex::Create(); SharedMutexPosix(); pthread_rwlock_t rwlock_; }; } // namespace fml #endif // FLUTTER_FML_SYNCHRONIZATION_SHARED_MUTEX_POSIX_H_