Test 2§
Test 2 will be Nov 2/Nov 3 during your regularly scheduled class time.
It will again be 50 min, bring your prepared sheet of notes. Bring a separate sheet from your test1 sheet. (You may not bring your test1 sheet, but hold onto it for the final exam.)
Preparation Materials§
- Test 2 Review Guide -- topic checklist, key concepts, and self-test questions with answers
Exam Format§
- Duration: 50 minutes
- Scope: New material since Test 1 (primarily multithreading, synchronization)
- Format: Closed-book, closed-internet, closed-computer exam. You may bring one page of prepared notes (both sides).
Topics Covered§
- Introduction to Multithreading
- Basic Locking and Data Races
- Semaphores
- Condition Variables and Monitors
- Deadlock
- Locking Performance
- Atomic Variables
- Exercise 3 (Outfoxed)
- Project 2 (Fork-Join Threadpool)
Tips§
- Review the Review Guide thoroughly
- Practice tracing through concurrent programs (data races, happens-before chains)
- Know the monitor pattern: mutex + condition variable + while-loop
- Understand your Project 2 implementation (work stealing, helping, deadlock prevention)
- Understand your Outfoxed Ex 3 implementation