69 void enterRead()
const noexcept;
79 bool tryEnterRead()
const noexcept;
91 void exitRead()
const noexcept;
101 void enterWrite()
const noexcept;
111 bool tryEnterWrite()
const noexcept;
123 void exitWrite()
const noexcept;
130 mutable int numWaitingWriters = 0, numWriters = 0;
133 struct ThreadRecursionCount
139 mutable Array <ThreadRecursionCount> readerThreads;