Вниз
Скачать: CL | DM;

Надо ли вызывать Coinitialize для обычных глобальных объектов?   Найти похожие ветки 

 
Aleksandr.   (2004-08-19 19:37) [0]

Если объект в констраторе создает ADO-соединение, а в дестракторе его уничтожает. Объект потоком не является, работа с ним ведется через глобальную переменную. И если надо, то где - в констракторе или в initialize?


 
jack128 ©   (2004-08-19 20:19) [1]

Еслитвое адо - соединение создается в основном потоке, то Coinitialize вызывать не нужно - она уж вызвана (в секции инициализации не помню какого модуля) Если же в дополнительном потоке, то вызывать Coinitialize CoUninitialize нужно в методе TTHread.Execute

procedure TDBThread.Execute;
begin
 Coinitialize;
 try
   // Тут работа с ADO
 finally
   CoUninitialize;
 end;
end;


> И если надо, то где - в констракторе или в initialize?
странный вопрос.. секции initialize всех модулей выполняются в основном потоке


 
Aleksandr.   (2004-08-19 20:35) [2]

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


 
KSergey ©   (2004-08-19 21:08) [3]

Offtop on

Я долго силился понять что есть "в констраторе".
После "в дестракторе" дошло ;)

А конструктор/деструктор - не прикольно? ;)

Offtop off


 
jack128 ©   (2004-08-19 21:14) [4]

Хе, а долго думал, в чем суть твоих притензий, пока внимательно не прочитал > "в констрАторе". :-)) Даже не обратил внимания.. ;-) Наверно потому, что сам с орфографией не очень дружу..



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
6-1089805731
RagE
2004-07-14 15:48
2004.09.19
Передача типа рекорд с помощью TCLientSocket/TServerSocket


1-1093979026
nd
2004-08-31 23:03
2004.09.19
Поддержка нескольких языков в программе.


1-1094472756
Andrey
2004-09-06 16:12
2004.09.19
Windows XP


6-1089644126
Serg_lys
2004-07-12 18:55
2004.09.19
Работа с компонентом TNMSMTP как применить кодировку


11-1080674755
nester
2004-03-30 23:25
2004.09.19
Как убрать отстув в EditBox при установленом eoPassword?




   Наверх