Lecture 10 (Thurs Sep 26): Synchronization 3: Monitors and Semaphores
Monitors/Condition Variables (00:59)
Go Back
Locks + what locks are missing
Locks: Mutual exclusion
Missing: Some way to wait
Condition Variables
Lock + CV's + shared Data =
Monitor
Pthreads API vs Object Oriented Languages (00:44)
Go Back
Monitor idea (01:12)
Go Back
Condvar Operations (03:00)
Go Back
pthread cv usage (02:29)
Go Back
WaitForFinish timeline 1 (01:18)
Go Back
WaitForFinish timeline 2 (00:28)
Go Back
Why the loop? (01:40)
Go Back
Unbounded buffer producer/consumer (05:00)
Go Back
Timeline for producer/consumer: 0 iterations (00:47)
Go Back
Timelixne for producer/consumer: 1 iteration (00:38)
Go Back
Timelixne for producer/consumer: 2+ iterations (02:08)
Go Back
Hoare vs Mesa monitors (03:35)
Go Back
Bounded buffer producer/consumer (04:11)
Go Back
Monitor pattern (01:44)
Go Back
Monitors rules of thumb (03:22)
Go Back
Monitor exercise (02:42)
Go Back