1#ifndef LIBOSMSCOUT_ASYNCWORKER_H
2#define LIBOSMSCOUT_ASYNCWORKER_H
43 bool deleteOnExit=
false;
64 return thread.get_id();
69 assert(std::this_thread::get_id()==thread.get_id());
77 queue.PushTask([promise, task]()
mutable {
79 T result = task(breaker);
#define OSMSCOUT_API
Definition CoreImportExport.h:45
AsyncWorker & operator=(const AsyncWorker &)=delete
AsyncWorker(const std::string &name)
AsyncWorker & operator=(AsyncWorker &&)=delete
void ThreadAssert() const
Definition AsyncWorker.h:67
std::thread::id GetThreadId() const
Definition AsyncWorker.h:62
AsyncWorker(const AsyncWorker &)=delete
AsyncWorker(AsyncWorker &&)=delete
CancelableFuture< T > Async(const std::function< T(Breaker &)> &task)
Definition AsyncWorker.h:74
Definition CancelableFuture.h:70
Definition CancelableFuture.h:109
void SetValue(const T &value)
Definition CancelableFuture.h:138
FutureBreaker Breaker() const
Definition CancelableFuture.h:150
CancelableFuture< T > Future() const
Definition CancelableFuture.h:123
Definition CancelableFuture.h:41
Definition ProcessingQueue.h:56