| Previous | Next |
| ERROR_BAD_PATHNAME | ERROR_MAX_THRDS_REACHED |
ERROR_SIGNAL_PENDING
What ERROR_SIGNAL_PENDING means
A signal is already pending for the target, so another equivalent signal cannot be queued. The result indicates coalescing or a single-pending-signal rule in a legacy signaling mechanism. The first signal has not yet been consumed, acknowledged, or cleared.
Common causes
- The sender retries before the target handles the first signal
- The target handler is blocked
- Acknowledgement was lost or not propagated
- Multiple producers signal the same target without coordination
How to investigate
- Correlate each send with target receipt and acknowledgement
- Measure pending duration and target handler latency
- Check whether multiple producers share the same signal channel
- Verify the pending flag is cleared after both success and cancellation
Developer guidance
Make signaling edge-triggered or maintain an explicit work queue. A signal should mean “work is available,” while the queue records how much work exists.
Administrator and support guidance
Repeatedly sending the same signal can amplify the problem. Inspect the target process health and pending work before forcing termination.
How this code differs from related results
This differs from ERROR_TOO_MANY_SEM_REQUESTS, which concerns semaphore state accounting rather than process signaling.
References
Looking for a different code? Search another status or error code.