Class CMemFileThreadPool

Class Documentation

class CMemFileThreadPool

Public Functions

CMemFileThreadPool(std::shared_ptr<CMemFileMap> memfile_map_, std::shared_ptr<Logging::CLogProvider> log_provider_)
~CMemFileThreadPool()
void Start()
void Stop()
bool ObserveFile(const std::string &memfile_name_, const std::string &memfile_event_, int timeout_observation_ms, const MemFileDataCallbackT &callback_)

Protected Functions

void CleanupPoolThread()
void CleanupPool()

Protected Attributes

std::atomic<bool> m_created
std::mutex m_observer_pool_sync
std::map<std::string, std::shared_ptr<CMemFileObserver>> m_observer_pool
std::atomic<bool> m_do_cleanup
std::condition_variable m_do_cleanup_cv
std::mutex m_do_cleanup_mtx
std::thread m_cleanup_thread
std::shared_ptr<CMemFileMap> m_memfile_map
std::shared_ptr<Logging::CLogProvider> m_log_provider