Re: SQLite++ в многопоточном приложении
От: PM  
Дата: 02.02.12 07:00
Оценка:
Здравствуйте, Gorilla, Вы писали:

Отвечал на личное сообещние, может не дошло

G>Начал использовать SQLite++ (http://sqlitepp.berlios.de/) в своем проекте, возникло несколько вопросов и предложений по развитию проекта.

G>1 — Проект еще жив? Последний коммит был в 2007 году.

Эээ, проект есть. Последний коммит в trunk был 6 апреля 2011 г.

G>2 — Можно ли использовать один объект sqlitepp::session из нескольких потоков? Если да, то какие ограничения на такое использование?


Можно, если обеспечить синхронизацию доступа к экземпляру sqlitepp::session, т.к. класс session не потокобезопасен.

G>3 — Кровь из носу нужна возможность вызывать сишные sqlite функции для объекта sqlitepp::session, например никак невозможно обойтись без sqlite3_busy_timeout, иначе запросы к базе обламываются при параллельном доступе из другого объекта sqlitepp::session.


Можно добавить нужные функции в класс sqlitepp::session, или сделать доступным sqlite3* хранящийся в session. Мне кажется первый путь чуть безопаснее и функции session::last_changes(), session::total_changes() были так и добавлены.

G>4 — Нужна возможность указывать флаги при открытии базы, например нужен флаг SQLITE_OPEN_SHAREDCACHE, он ускоряет одновременную работу нескольких сессий БД.


Без проблем — можно добавить параметр для флагов в session::open()

G>Можно ли все это сделать? И вопрос к автору: если я сам это сделаю, примет ли он патч?


Патч приму
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.