Как заставить пул соединений работать в DBX?
Что ж,Мне удалось настроить драйвер делегата, но пул соединений все еще доставляет мне много хлопот.
Из приведенных в документации описаний видно, что пул соединений должен работать следующим образом:
Set up the DBXPool driver delegate on a single, global Connection object Use this Connection object for all calls into the database Each DB call will get automagically routed through the delegate driver into a connection that's unique to its thread, owned by the connection pool.На практике я обнаружил, что, похоже, все еще обрабатывается глобальным объектом Connection, что приводит к всевозможным странным состояниям гонки и сбоям при попытке выполнить запросы к БД из нескольких параллельных потоков.
В случае, если это уместно, у меня не определено много специфичных для DBX компонентов; Я обычно запускаю запросы, вызываяConnection.Execute
метод.
Есть идеи, что я делаю не так? Я где-то пропускаю шаг, или я плохо понимаю, как работает драйвер делегата DBXPool?