Главная страница
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.045 c
8-1070444370
Hkr
2003-12-03 12:39
2004.04.04
PlaySound...


6-1075207849
Chris
2004-01-27 15:50
2004.04.04
Пользователь на удаленном компьютере


1-1079079215
ЕвгенийТ
2004-03-12 11:13
2004.04.04
запись текстового файла в DOS-кодировке


1-1079265878
kat
2004-03-14 15:04
2004.04.04
Как заменить иконку в откомпилиной проге?


3-1078871798
Reaper
2004-03-10 01:36
2004.04.04
Как в таблице изменить фон текущей ячейки?