From 261a8251150268aa2dd1d24044db281a70af2c86 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Tue, 22 Oct 2024 01:29:34 -0400 Subject: Add MP_POOL_TASK_STATUS_INITIAL * Better than putting -1 everywhere --- include/multiprocessing.h | 3 +++ src/lib/core/multiprocessing.c | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/multiprocessing.h b/include/multiprocessing.h index 5919462..ec7c1ad 100644 --- a/include/multiprocessing.h +++ b/include/multiprocessing.h @@ -38,6 +38,9 @@ struct MultiProcessingPool { int status_interval; ///< Report a pooled task is "running" every n seconds }; +/// A multiprocessing task's initial state (i.e. "FAIL") +#define MP_POOL_TASK_STATUS_INITIAL (-1) + /// Maximum number of multiprocessing tasks STASIS can execute #define MP_POOL_TASK_MAX 1000 diff --git a/src/lib/core/multiprocessing.c b/src/lib/core/multiprocessing.c index 484c566..29ea6b0 100644 --- a/src/lib/core/multiprocessing.c +++ b/src/lib/core/multiprocessing.c @@ -98,7 +98,7 @@ struct MultiProcessingTask *mp_pool_task(struct MultiProcessingPool *pool, const } // Set default status to "error" - slot->status = -1; + slot->status = MP_POOL_TASK_STATUS_INITIAL; // Set task identifier string memset(slot->ident, 0, sizeof(slot->ident)); @@ -254,7 +254,7 @@ int mp_pool_join(struct MultiProcessingPool *pool, size_t jobs, size_t flags) { for (size_t i = lower_i; i < upper_i; i++) { struct MultiProcessingTask *slot = &pool->task[i]; - if (slot->status == -1) { + if (slot->status == MP_POOL_TASK_STATUS_INITIAL) { if (mp_task_fork(pool, slot)) { fprintf(stderr, "%s: mp_task_fork failed\n", slot->ident); kill(0, SIGTERM); -- cgit