diff --git a/visualdl/logic/im.h b/visualdl/logic/im.h index f32cbc217f7e5d9520d72923e419433df59a787f..abbbc989fd78164a8f82e9de0c96aaf850293c58 100644 --- a/visualdl/logic/im.h +++ b/visualdl/logic/im.h @@ -40,7 +40,7 @@ public: void MaintainWrite(const std::string &dir, int msecs) { dynamic_cast(storage_.get()) - ->StartWriteSerice(dir, msecs, &lock_); + ->StartWriteService(dir, msecs, &lock_); } /* @@ -77,6 +77,8 @@ public: private: // read write lock for protobuf in memory + // TODO(ChunweiYan) mutex too heavy here, might change to a message queue to + // reduce the frequency of visiting disk std::mutex lock_; std::unique_ptr storage_; cc::PeriodExector executor_; diff --git a/visualdl/storage/storage.cc b/visualdl/storage/storage.cc index d5b54166629195e32b19d3e0c18c72aa274897e2..b29b0cebee28d3a42aeffc9362e4dc0175891f92 100644 --- a/visualdl/storage/storage.cc +++ b/visualdl/storage/storage.cc @@ -91,9 +91,9 @@ void MemoryStorage::StartReadService(const std::string &dir, (*executor_)(std::move(task), msecs); } -void MemoryStorage::StartWriteSerice(const std::string &dir, - int msecs, - std::mutex *handler) { +void MemoryStorage::StartWriteService(const std::string &dir, + int msecs, + std::mutex *handler) { CHECK(executor_ != nullptr); CHECK(!dir.empty()) << "dir should be set first"; storage_.set_dir(dir); diff --git a/visualdl/storage/storage.h b/visualdl/storage/storage.h index 31b9ab4ca6ac0e0e81c164e89313769e602751a0..3b59e5000e24966b7d64f9a7fbc421119d6ef5a3 100644 --- a/visualdl/storage/storage.h +++ b/visualdl/storage/storage.h @@ -105,7 +105,9 @@ public: * * msecs: how many millisecond to sync memory and disk. */ - void StartWriteSerice(const std::string &dir, int msecs, std::mutex *handler); + void StartWriteService(const std::string &dir, + int msecs, + std::mutex *handler); private: std::map tablets_;