CRU_KILLED (3)
CRU MANUAL
CRU_KILLED (3)

NAME

cru_killed - poll the killed state of a graph transformation job

SYNOPSIS

#include <cru/cru.h>

int cru_killed (void)

DESCRIPTION

When called from within any user-written callback function such as an operator or predicate invoked by a cru library function, this function tests whether the job that called the callback function has been killed by cru_kill since the callback function was called. The relevant job is determined automatically provided that cru_killed runs in the same thread as the callback function.

RETURN VALUE

If the job is found to be killed, this function returns a non-zero value. If the job has not been killed or if this function is called outside the thread context of a callback function, it returns zero.

ERRORS

none

NOTES

Ordinarily this function is not needed because no special action is required in user code to make a killed job terminate early. Using this function is appropriate only when immediate responses to killing events are important and callback functions are long-running. Because cru_kill does not pre-empt user-written code, the callback function should be designed to poll cru_killed and behave accordingly.

Killable operations compatible with this function include cru_built, cru_composed, cru_crossed, cru_fabricated, cru_filtered, cru_induced, cru_mapreduced, cru_merged, cru_mutated, cru_partition_of, cru_postponed, cru_split, and cru_stretched.

FILES

/usr/local/include/cru/cru.h

SEE ALSO

cru, cru_bop, cru_bpred, cru_builder, cru_built, cru_cbop, cru_classifier, cru_class_of, cru_class_size, cru_composed, cru_composer, cru_connect, cru_connector, cru_cqop, cru_crossed, cru_crosser, cru_ctop, cru_ctop_pair, cru_ctop_quad, cru_data_types, cru_deduplicated, cru_destructor, cru_destructor_pair, cru_edge_count, cru_fabricated, cru_fabricator, cru_filter, cru_filtered, cru_fold, cru_free_kill_switch, cru_free_later, cru_free_now, cru_free_partition, cru_function_types, cru_get, cru_hash, cru_induced, cru_inducer, cru_kernel, cru_kill, cru_mapreduced, cru_mapreducer, cru_merged, cru_merger, cru_mutated, cru_mutator, cru_new_kill_switch, cru_nop, cru_order, cru_order_pair, cru_partition_of, cru_plan, cru_postponed, cru_postponer, cru_prop, cru_prop_pair, cru_pruner, cru_qop, cru_qpred, cru_set, cru_sig, cru_singleton, cru_split, cru_splitter, cru_spread, cru_strerror, cru_stretch, cru_stretched, cru_stretcher, cru_subconnector, cru_terminus_count, cru_top, cru_tpred, cru_united, cru_uop, cru_vertex_count, cru_zone

AUTHOR

Dennis Furey (milonga@delayinsensitive.com)

PROJECT PAGE

https://github.com/gueststar/cru

CRU VERSION 0.15.3
October 05, 2024
CRU_KILLED (3)