MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / cbm_subprocess_request_cancel

Function cbm_subprocess_request_cancel

src/foundation/subprocess.c:1441–1459  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1439}
1440
1441bool cbm_subprocess_request_cancel(cbm_subprocess_t *process) {
1442 if (!process) {
1443 return false;
1444 }
1445 int lifecycle = atomic_load_explicit(&process->lifecycle, memory_order_acquire);
1446 for (;;) {
1447 if (lifecycle == CBM_SUBPROCESS_CANCEL_REQUESTED) {
1448 return true;
1449 }
1450 if (lifecycle != CBM_SUBPROCESS_ACTIVE) {
1451 return false;
1452 }
1453 int desired = CBM_SUBPROCESS_CANCEL_REQUESTED;
1454 if (atomic_compare_exchange_weak_explicit(&process->lifecycle, &lifecycle, desired,
1455 memory_order_acq_rel, memory_order_acquire)) {
1456 return true;
1457 }
1458 }
1459}
1460
1461void cbm_subprocess_destroy(cbm_subprocess_t *process) {
1462 if (!process || atomic_load_explicit(&process->lifecycle, memory_order_acquire) !=

Callers 10

watcher_git_runFunction · 0.85
cbm_watcher_watchFunction · 0.85
cbm_watcher_unwatchFunction · 0.85
cancel_active_git_entryFunction · 0.85
cbm_watcher_stopFunction · 0.85
ordered_log_callbackFunction · 0.85
test_subprocess.cFile · 0.85

Calls

no outgoing calls

Tested by 1

ordered_log_callbackFunction · 0.68