URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8393
[ Назад ]

Исходное сообщение
"Как реализовать многопоточный синглтон?"

Отправлено sherzod , 10-Авг-09 17:09 
Пишу простенькую библиотеку для бд. класс подключение DbConnection будет синглтоном и хранить все подключения. Как сделать его многопоточным? какие есть методы? Заранее благодарен за любые советы, идеи.

Содержание

Сообщения в этом обсуждении
"Как реализовать многопоточный синглтон?"
Отправлено rimidal , 10-Авг-09 19:06 
>Пишу простенькую библиотеку для бд. класс подключение DbConnection будет синглтоном и хранить
>все подключения. Как сделать его многопоточным? какие есть методы? Заранее благодарен
>за любые советы, идеи.

Если на уровне идеи (без привязки к языку) то примерно так:

Если он должен хранить все подключения то он должен называться хотя бы  DbConnections или ConnectionFactory. Должен он представлять из себя расширение какой-либо коллекции (set, list, map, array ....). Соответсвенно все его внешние методы должны быть потокобезопасными.
Основные рабочие методы ConnectionFactory: GetConneсtion  и CloseConneсtion

Ну и разумееться должен быть класс Connection, который тоже может быть потокобезопасным.