20 #ifndef RIPPLE_APP_MAIN_NODESTORESCHEDULER_H_INCLUDED
21 #define RIPPLE_APP_MAIN_NODESTORESCHEDULER_H_INCLUDED
23 #include <ripple/nodestore/Scheduler.h>
24 #include <ripple/core/JobQueue.h>
25 #include <ripple/core/Stoppable.h>
A NodeStore::Scheduler which uses the JobQueue and implements the Stoppable API.
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.
void onBatchWrite(NodeStore::BatchWriteReport const &report) override
Reports the completion of a batch write Allows the scheduler to monitor the node store's performance.
NodeStoreScheduler(Stoppable &parent)
Contains information about a fetch operation.
void doTask(NodeStore::Task &task)
void onStop() override
Override called when the stop notification is issued.
Provides an interface for starting and stopping.
Derived classes perform scheduled tasks.
Scheduling for asynchronous backend activity.
Contains information about a batch write operation.
A pool of threads to perform work.
void setJobQueue(JobQueue &jobQueue)
void onChildrenStopped() override
Override called when all children have stopped.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::atomic< int > m_taskCount