При закрытии приложения получаю ошибки.
[Ссылки могут видеть только зарегистрированные пользователи. ]
Перепробовал разные варианты при создании формы - в итоге ошибка.
А если поток создать в обработчике кнопки и запустить его - форма нормально закрывается.
Так мы создаём поток. В этом патоке есть некая функция с некоторыми переменными.
Есть у меня 5 процедур, через которые я передаю глобально переменные(читал что это очень плохо), вариантов пока не вижу других.
И естественно в каждой процедуре использую
Весь код выкладывать надо, или большие куски, относящиеся к сути вопроса.
Данные лучше всего передавать или в критической секции, или в синхронизированной процедуре, или до запуска потока.
Вообще делается так как в аттаче(создание+освобождение+передача данных синхронизацией).
________________
Ни одно доброе дело не остается безнаказанным.
procedure TFMain.Action9Execute(Sender: TObject);
var
dwID: dword;
begin
ThrHandle:=BeginThread(nil, 0, @ThreadFun1, PThreadData(1), 0, dwID);
if ThrHandle<>0 then
CloseHandle(ThrHandle);
end;
procedure TFMain.Action9Execute(Sender: TObject);
var
dwID: dword;
begin
ThrHandle:=BeginThread(nil, 0, @ThreadFun1, PThreadData(1), 0, dwID);
if ThrHandle<>0 then
CloseHandle(ThrHandle);
end;
//удаляем все таймеры из памяти
procedure TLINEAGE.TimFree;
var
i: integer;
begin
Time_Key := nil;
Time_Wnd := nil;
Time_Replace := nil;
Time_Real := nil;
Time_Color := nil;
for i := 1 to High(Timer) do
begin
Timer[i].Enabled := False;
Timer[i].Destroy;
end;
Timer := nil;
end;
________________
Группа вк: [Ссылки могут видеть только зарегистрированные пользователи. ]