Если я правильно понимаю, если я использую fair mode
блокировки чтения и записи не имеют приоритетов, и все блокировки будут получены в порядке запроса другими потоками. После получения запроса на запись - если
Но я не уверен в несправедливом режиме. Как написано в concurrency на практике это какой-то рандом.
Но я не полностью понимаю это.
Если я правильно понимаю, то наибольшая выгода от использования RWL в том, что читатели могут читать параллельно.
Но давайте представим, что у нас много операций чтения. Допустим, несколько потоков постоянно удерживают блокировку чтения (одиночное чтение не длинное, но чтение двух соседей всегда перекрывается). И иногда происходит операция записи.
Будут ли в конечном итоге выполняться операции записи?