When a modual updates a glogally shared resource (other than one with its own protection, such as
SQL database, or another server we are merely proxying), we need to use the APR global mutex to protect
critical sections of code.
The APR global mutex is more complex and more expensive than the thread mutex. The complexity lies
in the initial setup of the mutex. First, it must be created in the parent process in the pose_config
phase. Second, each child has to attach to it in the child_init phase.
SQL database, or another server we are merely proxying), we need to use the APR global mutex to protect
critical sections of code.
The APR global mutex is more complex and more expensive than the thread mutex. The complexity lies
in the initial setup of the mutex. First, it must be created in the parent process in the pose_config
phase. Second, each child has to attach to it in the child_init phase.