Solution (source code)

= Solution

With <synchronous message passing>, the smoothing <operating-system process> can still be waiting for `TEMP` when its next `PING` is due. If the timer service sends to subscribers serially, it blocks on this unready recipient and cannot deliver the other subscribers' ticks: \b[one slow sensor can delay every timer client through <head-of-line blocking>]. Once it resumes, implementations may deliver late ticks, drift from their schedule, or accumulate overdue work.

The consequence depends on the delivery model. With buffered sends the timer need not block immediately, but its <queue> can grow or overflow; the smoothing <operating-system process> still cannot process readings at a sustained rate faster than the <sensor>. A nonblocking notification mechanism or separate timer-delivery workers can isolate other subscribers, while coalescing missed ticks prevents an unlimited backlog. These changes do not make an over-slow <sensor> meet the original sampling rate.