The Readers and Writers Problem Family
1. Readers and writers share access to a single copy of a variable but only one reader or writer has access to the variable at a given time.
2. Allow only one active writer but any number of active readers.
3. Allow only one active writer, any number of active readers but guarantee fairness and that writers will have priority over readers.