Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.26;
Скачать: CL | DM;

Вниз

Как совместить сессию и TDataBase потока с bdeAPI?   Найти похожие ветки 

 
Aleksandr.   (2004-08-27 15:41) [0]

Согласно правилам, каждый поток должен для работы с БДЕ юзать свой TSession и свой TDataBase. Но у меня в этих потоках истчо и выполняются функции BDE типа dbiDoRestructure и dbiPackTable, для которых функция dbiOpenDataBase наверняка ведь возвращает какой-то свой хэндл и сессию, не совпадающие с VCL-овскими. А как их совместить?


 
clickmaker ©   (2004-08-27 15:50) [1]

TSession.Handle
TDatabase.Handle


 
Aleksandr.   (2004-08-27 15:59) [2]

Понял, спасибо.


 
Aleksandr.   (2004-08-27 16:15) [3]

Не, не понял.
Вот функция DbiGetLDName для получения языка таблицы, у нее в параметрах вообще не юзается никакой хендл. А ведь наверняка при ее вызове она в нарушение правила каку-то свою сессию и свою hDBIDB откроет...


 
clickmaker ©   (2004-08-27 16:29) [4]


> [3] Aleksandr.   (27.08.04 16:15)

а что тебе это так волнует? пусть открывает на здоровье


 
Aleksandr.   (2004-08-27 16:51) [5]

clickmaker ©  :
Так а если она через системную сессию полезет? Из другого-то потока?


 
clickmaker ©   (2004-08-27 17:52) [6]


> [5] Aleksandr.   (27.08.04 16:51)

Дык а в чем проблема-то? Не срабатывает функция, что-ли?


 
Aleksandr.   (2004-08-27 18:30) [7]

clickmaker ©  :
Проблема в том, что поток вешается в системе (и никакими ТерминатеТреад не снимается), если внутри него работа с БДЕ проводится не через собственные ДатаБазе и Сессион. В какой-то гнусный момент происходит сбой БДЕ и все - до свидания.


 
clickmaker ©   (2004-08-27 18:48) [8]


> [7] Aleksandr.   (27.08.04 18:30)

а если DbiInit вызвать в этом потоке?


 
Aleksandr.   (2004-08-27 19:34) [9]

Не помогает.



Страницы: 1 вся ветка

Текущий архив: 2004.09.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.038 c
9-1086243362
Kair
2004-06-03 10:16
2004.09.26
Примеры к книге М.Краснова


6-1090299208
Eagle
2004-07-20 08:53
2004.09.26
ServerSocket


1-1094813834
Antonmm
2004-09-10 14:57
2004.09.26
Свой курсор


14-1093947919
Труп Васи Доброго
2004-08-31 14:25
2004.09.26
Как работать с TIBUpdateSQL?


4-1092900410
Lizka
2004-08-19 11:26
2004.09.26
Как узнать версию офис из программы?