Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];

Вниз

Формирование массива   Найти похожие ветки 

 
Eraser   (2002-01-31 12:34) [3]

to Digitman
TMicro1Thread=class(TThread)
TMicro2Thread=class(TThread)
TMicro3Thread=class(TThread)
у них свойства и переменные одни и теже. Описаны в разных Unit"ах только из-за того что передаются в них и принимаются из них разные параметры. Я мучался со следующим кодом:
..основная форма
T:array [1..3] of TSortThread;

procedure TSortForm.StartBtnClick(Sender: TObject);
begin
T[1]:=TSortThread.Create(1,5);//Create(FirstParameter,NextParameter)
T[2]:=TSortThread.Create(2,4);
T[3]:=TSortThread.Create(3,6);
StartBtn.Enabled := False;
end;

..поток

type
TSortThread = class(TThread)
private
FFirstPar: integer;
FNextPar: integer;
public
Fs: integer;
procedure Sets(const Value: integer);
property s:integer read Fs write Sets;
procedure Execute; override;
constructor Create(const FirstParameter, NextParameter: integer);
end;

implementation

procedure TSortThread.Sets(const Value: integer);
begin
Fs := Value;
end;

constructor TSortThread.Create(const FirstParameter, NextParameter: integer);
begin
inherited Create(True);
FreeOnTerminate := True;
FFirstPar := FirstParameter; //Инициализация переменных
FNextPar := NextParameter;
Resume; //Переводим поток в состояние «Активный»
end;

procedure TSortThread.Execute;
var i:integer;
begin
while not Terminated do
begin
case FFirstPar of
1:for i:=1 to 10000 do
Fs:=Fs+FNextPar;
2:for i:=1 to 10000 do
Fs:=Fs+FNextPar;
3:for i:=1 to 10000 do
Fs:=Fs+FNextPar;
end;

end;
end;
создаю 3 разных потока - это все работает. Но не могу мернуть значение из каждого потока (из конкретного) по отдельности???



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

Форум: "Основная";
Текущий архив: 2002.02.14;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
1-42786
SP
2002-01-31 11:53
2002.02.14
Контрольна сумма файла


4-42901
Anderius
2001-11-17 21:12
2002.02.14
Как насильно завершить другую программу?


3-42702
ava
2002-01-22 23:17
2002.02.14
Как перенести, а затем востановить, данные из таблицы


3-42659
Demon Ltd
2002-01-21 01:22
2002.02.14
Работа из Edit ов с базами


1-42791
alexts
2002-01-29 19:34
2002.02.14
Atlon





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский