Как завершить нескольких потоков Tthread

Delphi делфи

Не знаю как правильно завершить созданные потоки.
Вот код в котором при нажатии кнопки Button1 создается три потока


Основной поток
uses th;

procedure TFormMain.Button1Click(Sender: TObject);
var
th: array[0..2] of ThMy;
I: Integer;
begin
for I := 0 to 2 do begin
th[I]:= ThMy.Create(true);
th[I].FreeOnTerminate:= false;
th[I].Priority:= tpNormal;
th[I].Start;
end;
end;


А вот собственно сам поток TThread

type
ThMy = class(TThread)
private
Msg: string;
procedure ShowMsg;
protected
procedure Execute; override;
end;

implementation

uses Unit1;

procedure ThMy.Execute;
var
i: Integer;
begin
while not Terminated do begin
Inc(i);
Sleep(10);
end;
end;


После запуска потока цикл while ожидает Terminated но вот как его послать и при том, что потока 3.
Вот собственно хочу завершить не все потоки сразу, а выборочно какой-либо из них.

Буду бдагодарен за любую помощь.
Ответы:
можно сделать th: array[0..2] of ThMy; полем формы
потом добавить кнопку, при нажатии вызывать
//для всех
for I := 0 to 2 do
begin
  th[I].Terminate;
end;
//для конкретного
th[0].Terminate;//вместо 0 можно Tag кнопки прописать
P.S.: не забывайте освобождать переменные потока.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.