Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.03;
Скачать: CL | DM;

Вниз

Вопрос про поток...   Найти похожие ветки 

 
vegarulez ©   (2008-01-03 20:08) [0]

мастера помогите...

пытаюсь делать как написано вот тут
http://www.delphimaster.ru/articles/panov/

но он почему то в потоке ругается на конструктор - типа
Declaration of "Create" differs from previous declaration


type
 TSend = class(TThread)
 private
   FSelect: String;                    //переменная запроса
   { Private declarations }
 protected
   procedure Execute; override;
 public
   constructor Create(aSelect: String);
 end;

implementation
uses Unit1;
{ TSend }

constructor TSend.Create(aPath: String);
begin
 inherited Create(True);     //Созданный поток создается в приостановленном состоянии
 FreeOnTerminate := True;    //Поток освободит ресурсы при окончании работы
 FSelect := aSelect;         //Переменная селекта из основного потока
 Self.Priority := Tplower;   //Низкий приоритет
 Resume;                     //Запускаем приостановленный поток
end;

Подскажите что не так? делаю вроде всё также как в статье...


 
vegarulez ©   (2008-01-03 20:12) [1]

всё... понел ошибку когда прочёл свой же вопрос... выделленный мною же жирный фрагмент... в нём ошибка была...
aPath то забыл заменить на свою переменную...
всем спасибо - разобрался...


 
_Mike_   (2008-01-03 21:41) [2]


> constructor TSend.Create(aPath: String);
> begin
>  inherited Create(True);     //Созданный поток создается
> в приостановленном состоянии
>  FreeOnTerminate := True;    //Поток освободит ресурсы при
> окончании работы
>  FSelect := aSelect;         //Переменная селекта из основного
> потока
>  Self.Priority := Tplower;   //Низкий приоритет
>  Resume;                     //Запускаем приостановленный
> поток
> end;

Какой-то глупый код...
Почему бы так не написать:


> constructor TSend.Create(aPath: String);
> begin
>  FreeOnTerminate := True;
>  FSelect := aSelect;
>  Priority := Tplower;   // Self То тут зачем????
>  inherited Create(False); // Ну и сразу запускаем. Нах тут Resume???
> end;


 
MetalFan ©   (2008-01-03 21:48) [3]


> Почему бы так не написать:

словишь ошибку при установке Priority.


 
ага   (2008-01-03 21:58) [4]

2 _Mike_

Ага. А вызов Priority := Tplower куда пойдет? На Сириус к зеленым человечкам?

> Ну и сразу запускаем. Нах тут Resume???

А затем что версии Delphi и до 2007 бывают. Пятая например.


 
Loginov Dmitry ©   (2008-01-03 22:00) [5]

А почему бы так не написать:

constructor TSend.Create(aPath: String);
begin
inherited Create(False);  
FreeOnTerminate := True;    //Поток освободит ресурсы при окончании работы
FSelect := aSelect;         //Переменная селекта из основного потока
Self.Priority := Tplower;   //Низкий приоритет
end;


Вызов CreateThread уже давно перенесен в AfterConstructor.


 
ага   (2008-01-03 22:06) [6]

2 Loginov Dmitry ©

> А почему бы так не написать:

А потому что статья писалась до того как
> Вызов CreateThread уже давно перенесен в AfterConstructor.


 
MetalFan ©   (2008-01-03 22:25) [7]


> Вызов CreateThread уже давно перенесен в AfterConstructor.

Resume туда перенесли.
а BeginThread как был в конструкторе, так и остался. (правда он там создается с CREATE_SUSPENDED


 
vegarulez ©   (2008-01-04 02:12) [8]

нда...
мне в этом обсуждении остаётся тока нервно покуривать в сторонке...
и сжимать в кулаке свои 5 копеек до лучших времён... )

Из выше прочитанного...  
У меня D6, в котором скорее всего, я думаю, ещё не было никуда ничего перенесяно...


 
_Mike_   (2008-01-04 02:45) [9]


> MetalFan ©   (03.01.08 21:48) [3]

ага. Точно. Что-то, блин, праздники на пользу не пошли...



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

Текущий архив: 2008.02.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.02 c
15-1198838544
user_
2007-12-28 13:42
2008.02.03
Кто бывает частенько в краснодарском крае


2-1199617359
WebSQLNeederr
2008-01-06 14:02
2008.02.03
Как загрузить изображение в TPaintBox


2-1199644924
Lab
2008-01-06 21:42
2008.02.03
как программно зашифровать (EFS кодирование) каталог/файл?


2-1198248676
botaniQ
2007-12-21 17:51
2008.02.03
Ошибка "has encountered a problem and needs to close..."


2-1200029813
Катунов Юрий
2008-01-11 08:36
2008.02.03
Как прочитать из параллельного порта из под Windows XP?