A critical region is a section of code during whose execution
interrupts are to be ignored. To create a critical region, one must
block signals for the duration of the critical region and unblock the
signals when leaving the critical region. Examples of how to do
this in both Prolog and C are in the library files critical.pl
and
critical.c
, which is discussed further in
ref-ere-ecr.