|     
		
		           
 
 | 
		
		What do we have in this session?  
		As one of the important topics related to Windows 
		process and thread, this tutorial tries to explain the details of the 
		process and thread synchronization techniques used in Windows. The 
		program examples also try to demonstrate several 'issues' related to 
		concurrency that exists such as deadlock, race condition, starvation 
		etc. and how the synchronization methods used can 'reduce' those 
		problems. 
			
			
			
			
			
			Atomicity
			Windows Thread States
			
			
			Single-object Wait Functions
			Multiple-object Wait Functions
			Alertable Wait Functions
			Registered Wait Functions
			Wait Functions and Time-out Intervals
			Wait Functions and Synchronization Objects
			Wait Functions and Creating Windows
			
			
			Events
			
			
			
			
			Object Names
			Object Inheritance
			Object Duplication
			Other Synchronization Mechanisms
			Synchronization and Overlapped Input and Output
			
			
			Synchronization Internals
			Critical Section Objects
			
			
			Slim Reader/Writer (SRW) Locks
			One-Time Initialization
			One-Time Initialization: Synchronous Mode
			One-Time Initialization: Asynchronous Mode
			
			
			The Interlocked API
			Interlocked Singly Linked Lists
			Timer Queues
			
			
			Race Condition Program Example
			
			
			Liveness
			Deadlock Example - The Dining Philosophers
			
			
			
			
			Livelock
			Program Examples on Using Synchronization Objects     
   
			
			
			
			
			
			
			
			
			
			The First Process Program Example
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			Starvation Issue
			The Six philosophers with Semaphore Program Example
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			The Synchronous Example
			
			
			
			
			
			
			
			
			
			
			
			
			
			
			Creating a Single Thread Program Example
			
			
			
			
			
			
			Some Notes for IA64
			
			
			
			
			
			
			
			
			Terminal Server and Naming Semaphore Objects
			
			
			Managing Thread Priorities in Windows
			
			
			Thread Scheduling Program Example
			
			
			Multiple Threads Example
			More: Synchronization Reference |