![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Несколько одновременных запросов к БД [D6, IB6.x]
AlexanderSK © (2004-07-16 16:04:00)Есть приложение, в нем енсколько нитей. Каждая нить работает с БД (СУБД InterBase). Как лучше организовать работу с сервером БД?
Можно ли использовать один компонент IBDataBase для всех нитей? Или обязательно в каждой ните открывать свое соединения с БД?
Заранее благодарен!
MORA (2004-07-17 00:50:00) [1]по этому поводу есть глава в книге:
http://www.williamspublishing.com/Books/5-8459-0305-X.html
Reindeer Moss Eater (2004-07-16 17:35:00) [2]Или IBDatabase
Reindeer Moss Eater (2004-07-16 17:33:00) [3]А что нам до функций gds, если мы разговариваем про потокобезопасный TDatabase?
Romkin (2004-07-16 17:19:00) [4]Reindeer Moss Eater © (16.07.04 16:12) [3] Потому что ни одна из функций gds32.dll не является потокобезопасной.
Digitman (2004-07-16 16:35:00) [5]
> AlexanderS
ты не въехал в смысл, заложенный в то что сказал RME
пул - это пул, он организован та что каждый из M коннектов к базе в каждый момент времени используется не более чем одни трэдом из списка N трэдов
Соловьев (2004-07-16 16:32:00) [6]
> нет ли где-нибудь примера построения приложения с пулом
> конктов к БД?
http://www.interbase-world.com/ru/articles/detail.php?ID=492
AlexanderSK (2004-07-16 16:32:00) [7]>Reindeer Moss Eater © (16.07.04 16:22) [5]
Нет! Пример такой чтобы использовать для N нитей оптимально использовать M уже открытых коннектов к БД, причем N > M?
Reindeer Moss Eater (2004-07-16 16:22:00) [8]А в чем проблема?
Приложение с датамодулем и ThreadObject'ом
Внутри execute создаем экземпляр датамодуля, коннектимся.
Все дела.
AlexanderSK (2004-07-16 16:19:00) [9]А нет ли где-нибудь примера построения приложения с пулом конктов к БД?
Reindeer Moss Eater (2004-07-16 16:12:00) [10]С какой беды обязателен отдельный коннект?
Romkin (2004-07-16 16:10:00) [11]Вот еще! Обязательно отдельный коннект для каждой нити. И плюс ко всему, установление коннекта к БД надо также защищать критической секцией, не допуская одновременного установления соединения разными потоками - защита только в FB1.5 появилась, если не ошибаюсь
Reindeer Moss Eater (2004-07-16 16:08:00) [12]Не обязательно.