rippled
Loading...
Searching...
No Matches
NodeStoreScheduler.h
1#ifndef XRPL_APP_MAIN_NODESTORESCHEDULER_H_INCLUDED
2#define XRPL_APP_MAIN_NODESTORESCHEDULER_H_INCLUDED
3
4#include <xrpl/core/JobQueue.h>
5#include <xrpl/nodestore/Scheduler.h>
6
7namespace xrpl {
8
11{
12public:
13 explicit NodeStoreScheduler(JobQueue& jobQueue);
14
15 void
16 scheduleTask(NodeStore::Task& task) override;
17 void
18 onFetch(NodeStore::FetchReport const& report) override;
19 void
20 onBatchWrite(NodeStore::BatchWriteReport const& report) override;
21
22private:
24};
25
26} // namespace xrpl
27
28#endif
A pool of threads to perform work.
Definition JobQueue.h:38
A NodeStore::Scheduler which uses the JobQueue.
void onBatchWrite(NodeStore::BatchWriteReport const &report) override
Reports the completion of a batch write Allows the scheduler to monitor the node store's performance.
void scheduleTask(NodeStore::Task &task) override
Schedules a task.
void onFetch(NodeStore::FetchReport const &report) override
Reports completion of a fetch Allows the scheduler to monitor the node store's performance.
Scheduling for asynchronous backend activity.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:6
Contains information about a batch write operation.
Contains information about a fetch operation.
Derived classes perform scheduled tasks.
Definition Task.h:9