Add missing include
[platform/core/appfw/pkgmgr-info.git] / src / server / cache_flag.hh
index 67aa9a0..43da05c 100644 (file)
@@ -36,7 +36,7 @@ class EXPORT_API CacheFlag {
 
   static bool SetPreparing() {
     bool ret = false;
-    std::unique_lock<std::mutex> u(status_lock_);
+    std::unique_lock<std::shared_mutex> u(status_lock_);
     if (status_ == Status::UNPREPARED) {
       status_ = Status::PREPARING;
       ret = true;
@@ -45,25 +45,25 @@ class EXPORT_API CacheFlag {
   }
 
   static void SetStatus(Status status) {
-    std::unique_lock<std::mutex> u(status_lock_);
+    std::unique_lock<std::shared_mutex> u(status_lock_);
     status_ = status;
   }
 
   static Status GetStatus() {
-    std::unique_lock<std::mutex> u(status_lock_);
+    std::shared_lock<std::shared_mutex> s(status_lock_);
     return status_;
   }
 
-  static std::unique_lock<std::shared_timed_mutex> GetWriterLock() {
-    return std::unique_lock<std::shared_timed_mutex>(lock_);
+  static std::unique_lock<std::shared_mutex> GetWriterLock() {
+    return std::unique_lock<std::shared_mutex>(lock_);
   }
 
   static void WriterUnLock() {
     lock_.unlock();
   }
 
-  static std::shared_lock<std::shared_timed_mutex> GetReaderLock() {
-    return std::shared_lock<std::shared_timed_mutex>(lock_, std::defer_lock);
+  static std::shared_lock<std::shared_mutex> GetReaderLock() {
+    return std::shared_lock<std::shared_mutex>(lock_, std::defer_lock);
   }
 
   static void ReaderUnLock() {
@@ -72,8 +72,8 @@ class EXPORT_API CacheFlag {
 
  private:
   static inline Status status_;
-  static inline std::mutex status_lock_;
-  static inline std::shared_timed_mutex lock_;
+  static inline std::shared_mutex status_lock_;
+  static inline std::shared_mutex lock_;
 };
 
 }  // namespace pkgmgr_server