У меня есть приложение Perl в Windows, которое использует потоки, работающие параллельно. Каждый поток обращается к базе данных MSSQL.
Я понимаю, что не могу использовать Win32::OLE
, поскольку он не является потокобезопасным.
Не могли бы вы предложить мне другое подходящее решение для этого?
Создать службу Windows, которая будет обращаться к базе данных как один поток, а Perl будет использовать эту службу?
Создать еще один «сервер» приложения Perl, который будет обращаться к БД как к однопоточному приложению, а потоки Perl будут использовать эту службу?
Использовать библиотеку
Win32::OLE
(DBI) только в дочерних потоках или каким-то безопасным способом?
Я не знаю, какой правильный путь, и какие пути решения могут быть.
DBD
драйверов. - person Borodin   schedule 06.09.2016$dbh->{AutoInactiveDestroy} = 1
непосредственно после вызоваconnect
для более безопасной многопоточной работы. - person Borodin   schedule 07.09.2016