Company: Cisco
Difficulty: medium
Shared context — identical in all four questions in this set. The scenario and artifacts below are exactly the same across all four questions; only the Question section changes. If you have already read them in another question, skip straight to Question . A shared in-memory data table is accessed by many threads. Most accesses are reads (lookups); occasionally a thread performs a write (update). To allow concurrent reads, an engineer implements a classic reader-writer lock with this policy: Any number of readers may hold the lock simultaneously. A writer needs exclusive access. A new reader may acquire the lock as long as at least one reader currently holds it (readers don't wait for a waiting writer). Under production load (reads arriving continuously), writers sometimes wait for many seconds and a few updates appear to never apply. Reads are always fast. Question Identify the failure. Why do writers wait for seconds (or forever) while reads stay fast? Name the property this lock pol