This repository has been archived on 2022-02-10. You can view files and clone it, but cannot push or open issues or pull requests.
2021-12-12 18:42:47 +01:00
|
|
|
#ifndef FORTUNA_DO_TASK_H
|
|
|
|
#define FORTUNA_DO_TASK_H
|
|
|
|
|
|
|
|
#include <chrono>
|
|
|
|
#include <functional>
|
|
|
|
#include <mutex>
|
|
|
|
#include <thread>
|
|
|
|
|
|
|
|
namespace fortuna {
|
|
|
|
|
|
|
|
class DoTask {
|
|
|
|
private:
|
|
|
|
std::timed_mutex do_sleep;
|
2022-01-01 07:38:06 +01:00
|
|
|
std::thread th;
|
2021-12-12 18:42:47 +01:00
|
|
|
public:
|
2022-01-02 07:12:14 +01:00
|
|
|
DoTask() noexcept;
|
2021-12-12 18:42:47 +01:00
|
|
|
~DoTask() noexcept;
|
|
|
|
|
|
|
|
auto thread_pls(const std::chrono::seconds& interval,
|
|
|
|
std::function<void()> callback) -> void;
|
|
|
|
auto die_pls() -> void;
|
|
|
|
|
|
|
|
}; // class DoTask
|
|
|
|
|
|
|
|
} // namespace fortuna
|
|
|
|
|
|
|
|
#endif//FORTUNA_DO_TASK_H
|