Есть одно glib-приложение. Однопоточное. Все вызовы асинхронные. То, что выполняется долго возвращает результат по обратным вызовам. Нужно прикрутить к нему небольшую БД. Смотрю в сторону SQLite, который является почти стандартом для десктопных приложений - его тянут чуть ли не все браузеры и т.п. Так вот незадача - не могу найти у него неблокирующий API. Судя по всему, единственный вариант - это выносить работу с БД в отдельный поток, чего делать не хотелось бы. Нашёл некую поделку, которая, судя по описанию, даёт асинхронный API: http://code.google.com/p/sqlheavy/ Кто-нибудь оным пользовался?
Ну и, собственно, вопрос - как народ пользуется этим sqlite в однопоточных приложениях? Всякие там громоптицы/сабвёршны выносят работу с БД в отдельный поток или как?