Class faabric::executor::Executor
-
class Executor
Public Functions
-
virtual ~Executor()
-
virtual void shutdown()
Shuts down the executor and clears all its state, including its thread pool.
This must be called before destructing an executor. This is because the tidy-up requires implementations of virtual methods held in subclasses, that may depend on state that those subclass instances hold. Because destructors run in inheritance order, this means that state may have been destructed before the executor destructor runs.
-
bool tryClaim()
-
void claim()
-
void releaseClaim()
-
std::shared_ptr<faabric::util::SnapshotData> getMainThreadSnapshot(faabric::Message &msg, bool createIfNotExists = false)
-
long getMillisSinceLastExec()
-
virtual std::span<uint8_t> getMemoryView()
-
virtual void restore(const std::string &snapshotKey)
-
bool isExecuting()
-
inline bool isShutdown()
-
std::set<unsigned int> getChainedMessageIds()
-
std::vector<faabric::util::SnapshotDiff> mergeDirtyRegions(const Message &msg, const std::vector<char> &extraDirtyPages = {})
-
void setThreadResult(faabric::Message &msg, int32_t returnValue, const std::string &key, const std::vector<faabric::util::SnapshotDiff> &diffs)
-
virtual void setMemorySize(size_t newSize)
Public Members
-
std::string id
-
virtual ~Executor()