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

Вниз

Thread   Найти похожие ветки 

 
Slay   (2005-01-22 20:22) [0]

Извиняюсь за oftopic но возможно кто-то мне подскажет которую из функций глобальную(Find1) или локальную(Find2) использовать более правельно и оптимально. Эти функции абсолютно одинаковы и делают что-то одно и то же с глобальной переменной (Tree), они вызываются одновременно из многих Thread

Огромное спосыбо.

Пример:
...
var Tree:PTree;
   Thread1,Thread2,...:PThread;
...
function Find1(...):...;
begin
...
 что-то ищет в Tree;
...
end;

procedure ThreadExecute(Data:pointer;Sender:PThread);
var res:...;

function Find2(...):...;
begin
 что-то ищет в Tree;
end;

begin
//которую из них более целесообразно использовать?

res := Find1(...); //или
res := Find2(...);

end;

procedure TForm1.MainFormFormCreate(Sender: PObj);
begin
Thread1 := NewThreadAutoFree(TOnThreadExecute(MakeMethod(data,@ThreadExecute)));

Thread2 := ...;
....
end;
...


 
thaddy   (2005-01-22 20:59) [1]

You need to synchronize the access to the variable.
On my website are objects (analogous to the VCL) that can do that.
I can also email you an example directly. kol@chello.nl :) (was free, why not use it!)


 
Slay   (2005-01-22 21:36) [2]

Обязательно ли нужно использовать synchronize если я только читаю из переменной и точно зною что ее никто не изменит потому что она заполняется данными только один раз перед созданием потоков?

Если ненужно то мой вопрос остается как мне описывать Find глобально(Find1) или локально(Find2)?

Спосибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.038 c
8-1114452330
DolQ
2005-04-25 22:05
2005.09.04
Image


10-1100540687
Cheburek
2004-11-15 20:44
2005.09.04
Правильно передать IStream из DCOM-клиента на DCOM-сервер ?


10-1096512940
Юзер
2004-09-30 06:55
2005.09.04
F1book- как открыть Excel в F1book?


3-1121960535
Djek
2005-07-21 19:42
2005.09.04
Вывод неповторяющегося значения поля в ComboBox


3-1122323223
Vir
2005-07-26 00:27
2005.09.04
Недопустимая закладка