@libera

Многопоточная программа?

Уже 2 сутки не могу понять как сделать.
Подскажите

Вызываю поток
procedure TForm1.btn1Click(Sender: TObject);
var
  I: Integer;
begin
for I := 0 to se1.Value do
  text:=proba.Create(False);
  text.Priority:=tpNormal;
end;
 
end.

в потоке
procedure Proba.Execute;
begin
  n1;
end;
 
procedure Proba.n1;
var
  I: Integer;
  s,a:string;
begin
  for I := 0 to 5 do
    begin
      s:=form1.mmo1.Lines.Strings[i];
      Form1.mmo2.Lines.Add(s);
      Sleep(1000);
    end;
 
end;


end.
В se1 записываю пример 5 потоков это кнопка TSpinEdit;
Все работает, но я думаю не так.
Он выполняет все по 5 раз, а именно
1
2
3
4
5
Перенести в 2 memo
А он тупо одинаково все выполняет
1
1
1
1
1
2
2
2
и .д.
А мне надо, что бы он создал 5 потоков, с разными данными
1/2/3/4/5
Во 2 потоке 2
В 3 потоке 3 ну и т.д.

Подскажите как так сделать? Что бы он не попировал потоки и выполнял, а создавал 5 разных потоков с разными переменными
  • Вопрос задан
  • 115 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы