The usual pattern for handling a signal is that the signal handler sets
a global variable and calls SetLatch(MyLatch) to wake up the process,
and later CHECK_FOR_INTERRUPTS() or other code that is part of a wait
loop calls another function to deal with it. The naming of the functions
involved was a bit inconsistent, however. CHECK_FOR_INTERRUPTS() calls
ProcessInterrupts() to do the heavy-lifting, and the subroutines of
ProcessInterrupts() were called Process*(), except for
HandleParallelMessages() and HandleParallelApplyMessages().
Some aux processes don't call CHECK_FOR_INTERRUPTS() and
ProcessInterrupts() in the main loop, but they have analogous functions
like HandleMainLoopInterrupts(), HandleStartupProcInterrupts(), etc.
To make things less confusing, the attached patch renames all the
functions that are part of the overall signal/interrupt handling system
but are *not* executed in a signal handler to e.g. ProcessSomething(),
rather than HandleSomething().
Any objections?
P.S. I bumped into this during the larger interrupt revamping work, see
"Interrupts vs signals" thread. With that, most of the remaining
functions that are now called Handle*() will go away, and the Process*()
functions will mostly stay. But IMHO this makes sense independently of
that work.
--
Heikki Linnakangas
Neon (https://neon.tech)