Table of Contents
- 24.1 Sleep
- 24.2 Wait Condition
- 24.3 Dbug Sleep
- 24.4 Error Injection
- 24.5 User-Level Locks
- 24.6 Debug Sync Facility
- 24.7 Debug Sync Point (Obsolete)
There is a class of problems that require two or more cooperating threads to reproduce them.
A subclass of these problems is known as "race conditions". They require one thread to execute a certain piece of code while another thread executes another certain piece of code.
The vast majority of race conditions cannot be repeated reliably without some sort of synchronization of the involved threads. In most cases it is unlikely that the threads run through these code pieces at the right time. In this context 'synchronization' means to force the threads to meet at the critical code places.
In this chapter I'll describe some synchronization mechanisms:
Debug Sync Point
Debug Sync Facility