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

Вниз

Помогите с потоками   Найти похожие ветки 

 
Vilux ©   (2004-03-13 18:40) [0]

Моя программа должна поулчать некоторые данные, на основе их запускать нужные dll-ки. Я решил, что эти dll надо запускать в отдельных потоках, чтобы организовать многопоточность. Теперь вопрос. Как мне это организовать?  Мне нужно создать поток и передать в него некоторые параметры. После этого дальнейшая судьба потока меня не интересует. Он должен отработать и сам себя уничтожить. Я не силен в потоках, знаю, что можно создавать потоки с классом TThread  и без класса. В моем случае, наверное, выгоднее создавать поток без класса. Помогите примерчиком. И как потом потоку убить самого себя?


 
Юрий Зотов ©   (2004-03-13 19:11) [1]

type
 TParams = record
   ...
 end;
 
 TDllLauncher = class(TThread)
 protected
   procedure Execute; override;
 public
   Params: TParams;
 end;

procedure TDllLauncher.Execute;
begin
 ... // Используем Params, запускаем DLL
end;

Старт потока:

with TDllLauncher.Create(True) do
try
 FreeOnTerminate := True;
 with Params do
 begin
   ... // Назначаем параметры
 end;
 Resume
except
 Free;
 raise
end;

А вот что такое "запустить DLL", надо ли ее выгружать и нужна ли Вам на самом деле многопоточность - это уж Вы решайте сами.


 
Vilux ©   (2004-03-13 19:20) [2]

В смысле не запустить, а подгружать Dll, но не суть важно. Спасибо, я попробую...



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

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

Наверх




Память: 0.47 MB
Время: 0.022 c
3-1078490558
Kein
2004-03-05 15:42
2004.04.04
блокировка таблица


1-1079228001
Demik
2004-03-14 04:33
2004.04.04
-= MainMenu - в нем BitMap -=-


14-1078891957
тихий вовочка
2004-03-10 07:12
2004.04.04
Как работает поиск на этом сайте?


7-1074602584
abs2
2004-01-20 15:43
2004.04.04
средства Windows


14-1079075846
Bless
2004-03-12 10:17
2004.04.04
Песня из фильма "Логово койотов"