vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
Public Member Functions | List of all members
vitrio::completion_notifier Class Referenceabstract

Where a finished unit of work is reported. More...

#include <vitrio/concurrency/completion_notifier.hpp>

Inheritance diagram for vitrio::completion_notifier:
Inheritance graph
[legend]

Public Member Functions

 completion_notifier (const completion_notifier &other)=default
 
 completion_notifier (completion_notifier &&other)=default
 
completion_notifier & operator= (const completion_notifier &other)=default
 
completion_notifier & operator= (completion_notifier &&other)=default
 
virtual void notify_done (std::exception_ptr error=nullptr)=0
 Report that one unit of work has finished.
 

Detailed Description

Where a finished unit of work is reported.

Disjoint from completion on purpose: an executor is handed this, never the query side, and a caller of executor::submit is handed the query side back, never this.

Member Function Documentation

◆ notify_done()

virtual void vitrio::completion_notifier::notify_done ( std::exception_ptr  error = nullptr)
pure virtual

Report that one unit of work has finished.

Called exactly once per unit of work this notifier stands for.

Parameters
errorThe exception the unit of work raised, or null if it succeeded.
Thread safety
May be called concurrently, from as many threads as there are units of work.

Implemented in vitrio::counting_completion.


The documentation for this class was generated from the following file: