Skip to content

sgns::sgprocessing::CancellationToken

More...

#include <execution_context.hpp>

Public Functions

Name
CancellationToken() =default
CancellationToken(const CancellationToken & ) =delete
CancellationToken & operator=(const CancellationToken & ) =delete
CancellationToken(CancellationToken && ) =delete
CancellationToken & operator=(CancellationToken && ) =delete
void Cancel()
bool IsCancelled() const
Returns true after Cancel() has been called.
void SetCallback(std::function< void()> callback)

Detailed Description

struct sgns::sgprocessing::CancellationToken;

Callback-based cooperative cancellation token (D-01, D-02, D-05).

Thread-safe: Cancel() may be called from deadline timer thread while IsCancelled() is read on the processing thread. Uses std::atomic with acquire/release ordering.

Public Functions Documentation

function CancellationToken

CancellationToken() =default

function CancellationToken

CancellationToken(
    const CancellationToken & 
) =delete

function operator=

CancellationToken & operator=(
    const CancellationToken & 
) =delete

function CancellationToken

CancellationToken(
    CancellationToken && 
) =delete

function operator=

CancellationToken & operator=(
    CancellationToken && 
) =delete

function Cancel

inline void Cancel()

Invokes the registered cancel callback (if set) and sets the cancelled flag. The callback is invoked synchronously, at most once.

function IsCancelled

inline bool IsCancelled() const

Returns true after Cancel() has been called.

function SetCallback

inline void SetCallback(
    std::function< void()> callback
)

Register the cancel callback. Called by ProcessingManager before passing the token to the processor.


Updated on 2026-09-17 at 06:29:14 +0000