Files
AronaCore/core/thread_message/thread_message.h
2024-07-17 19:18:07 +08:00

23 lines
496 B
C++

#pragma once
#include <functional>
#include "extern.h"
#include "misc/mempool.h"
class CORE_API thread_message {
public:
virtual ~thread_message() = default;
virtual void execute() = 0;
};
class CORE_API lamba_thread_message : public thread_message, public pool_obj<lamba_thread_message> {
public:
lamba_thread_message(const std::function<void()>& in_func) : function(in_func) {
}
void execute() override {
function();
}
std::function<void()> function;
};