Многопоточная одновременная вставка в БД SQLite3

320
skeetastax

Документация по SQLite3 явно указывает на то, что несколько параллельных потоков могут считывать данные из одной и той же базы данных SQLite3 в одно и то же время, но в записях это не так ясно.

Могу ли я записывать (INSERT / UPDATE) несколько записей в одну и ту же базу данных SQLite3 одновременно, используя разные потоки / процессы?

Я пытаюсь реализовать это в Perl, используя модуль DBI с потоками или модулем Parallel :: ForkManager, и мне нужно знать, копировать ли «основной» дескриптор БД или открывать отдельный дескриптор для потока (я подозреваю, что копирование дескрипторов в порядке для чтения БД, но не такая хорошая идея для записи).

Любая ясность в предложении будет принята с благодарностью.

0

0 ответов на вопрос