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

Вниз

Работа с потоками   Найти похожие ветки 

 
webpauk   (2007-04-24 11:20) [0]

type
 TDoc = class(TObject)
 private
   fID: Integer;
   fOwner: TObject;
   fCount: Integer;
   fArr: array of TObject;
   fIDDocType: Integer;

   procedure Activate;
 protected
   constructor Create(Owner: TObject; IDValue: Integer);
 end;

procedure TDoc.Activate;
var
 I: Integer;
 Log: Boolean;
begin
 Query.SQL.Text:="Select ...";
 Query.Active:=True;

 fIDDocType:=Query.FieldByName("IDDocType").AsInteger;

 Query.SQL.Text:="Select ...";
 Query.Active:=True;

 while not Eof do
 begin
   SetLength(fArr, fCount+1);
   fArr[fCount]:=TDoc.Create(Self, Query.FieldByName("ID").AsInteger);
   Inc(fCount);

   Next;
 end;

 for I := Low(fArr) to High(fArr) do
 begin
   TDoc(fArr[I]).Activate;
 end;
end;


в процедуре Activate, как видно производится "Query.select" - и очень много. Занимает много времени.
Может через потоки это будет быстрее?
Если не в лом, подскажите как.


 
Сергей М. ©   (2007-04-24 11:28) [1]


> Может через потоки это будет быстрее?


Нет, не будет.
Даже не обольщайся.


 
clickmaker ©   (2007-04-24 11:34) [2]


> Может через потоки это будет быстрее?

быстрее не будет, но можно открыть 1 документ, и пока юзер балдеет от увиденного, под ковром докачивать остальные (в потоке)


 
Сергей М. ©   (2007-04-24 11:51) [3]


> Занимает много времени


В первую очередь следует обратить внимание на оптимальность самого запроса и на оптимальность структуры данных в БД, к которым в запросе происходит обращение. И только после этого обращать взор к потокам.



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

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

Наверх




Память: 0.47 MB
Время: 0.058 c
1-1174029549
kyn66
2007-03-16 10:19
2007.05.13
Заблокировать доступ к родительской ветке ListView


2-1177487406
Neket
2007-04-25 11:50
2007.05.13
Скопировать строки в Excel


1-1173776106
Demondelphi
2007-03-13 11:55
2007.05.13
Буфер обмена, обмен данными между главной и дочерними формами


2-1177087956
likenoother
2007-04-20 20:52
2007.05.13
замена Timage


3-1172500836
avsam
2007-02-26 17:40
2007.05.13
ADO-версия. Как узнать?