Предположим, есть большой LMDB-файл. Обычно я получаю его содержимое последовательно, используя mdb_cursor_get (курсор, & key, & data, MDB_NEXT) через курсор.
А теперь, чтобы увеличить скорость чтения, я создаю очередь, разделив LMDB на 10 равных частей и запустив 10 потоков для чтения каждого фрагмента содержимого отдельно, а затем поместите то, что каждый поток читает, в очередь.
Это нормально? Меня не волнует порядок, только контент.
Если да, как мне синхронизировать курсор в каждом потоке?