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

Вниз

Thread   Найти похожие ветки 

 
c0pYc@t   (2002-07-26 11:49) [0]

Люди добрые объястите в чем дело. В хелпе нарыл что есть свойство

Terminated - показывает, завершен ли процесс. True - завершен, False - нет. Тип: Boolean;

подскажите что я делаю не так
создал процесс masthr[index] := TMyThr.Create(item);

а как посмотреть его свойство не знаю :(, чего то
нет его в списке masthr[index].???
что не так?


 
Виктор Щербаков   (2002-07-26 11:53) [1]

Во первых это свойство Protected. Так что ты его просто не увидишь, если попытаешься обратиться из другого модуля.


 
Skier   (2002-07-26 11:53) [2]

>c0pYc@t
Оно protected.


 
Zavdim   (2002-07-26 11:54) [3]

А ты его напиши сам и прокомпилируй - если даст ошибку, то тогда смотри свой array - masthr - каково его описание.
А в списке не все всегда появляется. Причину не знаю.


 
c0pYc@t   (2002-07-26 11:55) [4]

Виктор Щербаков © (26.07.02 11:53)
>Во первых это свойство Protected. Так что ты его просто не >увидишь, если попытаешься обратиться из другого модуля.

Skier © (26.07.02 11:53)
>Оно protected.

поскажите как его можно посмотреть очень нуна



 
Skier   (2002-07-26 11:59) [5]

>c0pYc@t
В своём классе-потомке TMyThr перенеси его в раздел public.


TYourThread=class(TThread)
public
property Terminated;
end;


 
c0pYc@t   (2002-07-26 12:14) [6]

И еще я не понял после чего Terminated=true
когда процесс завершен


 
Виктор Щербаков   (2002-07-26 12:15) [7]

c0pYc@t (26.07.02 11:55)
Можно так:
TNewMyThread = class(TMyThr);
...
(masthr[index] as TNewMyThread).Terminated := true;


 
Виктор Щербаков   (2002-07-26 12:18) [8]

c0pYc@t (26.07.02 12:14)
Чего?


 
c0pYc@t   (2002-07-26 12:22) [9]

>Виктор Щербаков ©
меня интересует когда свойство Terminated становится true, т.е. когда можно считать что процесс завершен


 
Виктор Щербаков   (2002-07-26 12:23) [10]

c0pYc@t (26.07.02 12:22)
procedure TThread.Terminate;
begin
FTerminated := True;
end;
Вопрос снят?


 
Alx2   (2002-07-26 12:26) [11]

>c0pYc@t (26.07.02 12:22)
>когда свойство Terminated становится true
Когда закончил работу метод Execute.


 
Виктор Щербаков   (2002-07-26 12:37) [12]

c0pYc@t (26.07.02 12:22)
Хм. Чтобы внести ясность:

> меня интересует когда свойство Terminated становится true
См. Виктор Щербаков © (26.07.02 12:23)
Поток при это мможет продолжать работу. Мало того, он вообще может не реагировать на изменение св-ва Terminated.

> когда можно считать что процесс завершен
Только не процесс, а поток. См. Alx2 © (26.07.02 12:26)


 
c0pYc@t   (2002-07-26 12:42) [13]

То есть после Execute
Terminated = true ???


 
Виктор Щербаков   (2002-07-26 12:46) [14]

c0pYc@t (26.07.02 12:42)
Нет.


 
c0pYc@t   (2002-07-26 12:48) [15]

Виктор Щербаков ©
когда же наконец
или оно вообще не меняется


 
Виктор Щербаков   (2002-07-26 12:51) [16]

c0pYc@t (26.07.02 12:48)
Я тебе указал место, где изменяется член класса, соответствущий свойству Terminated. Это происходит при вызове метода Terminate.


 
c0pYc@t   (2002-07-26 12:54) [17]

Т. е. в своем коде
последней строчкой в Execute должно быть Terminate и тогда все будет ок?


 
Виктор Щербаков   (2002-07-26 12:59) [18]

c0pYc@t (26.07.02 12:54)
Если тебе действительно нужно изменять значение Terminated в конце метода Execute, то сделай это так:
try
// код потока
finally
FTerminated := true;
end;


 
Alx2   (2002-07-26 13:04) [19]

>c0pYc@t (26.07.02 12:54)
Здесь причина и следствие поменялись :)
В методе Execute можно обрабатывать Terminated и правильно реагировать на него.


 
c0pYc@t   (2002-07-26 13:20) [20]

А FTerminated что такое?


 
Виктор Щербаков   (2002-07-26 13:36) [21]

Какой ты всё-таки дотошный...
Если уж так интересно внутреннее устройство класса TThread, то почему бы самому не посмотреть его исходники.


 
c0pYc@t   (2002-07-26 14:19) [22]

>Если тебе действительно нужно изменять значение Terminated в >конце метода Execute, то сделай это так:

Эээ извените за назойливость но


finally
FTerminated := true;
end;

ругается говорит что такое FTerminated


 
Виктор Щербаков   (2002-07-26 14:23) [23]

Хм. Ну да, действительно. Это же в коде потомка. Нужно просто Terminated := true;


 
c0pYc@t   (2002-07-26 14:26) [24]

Cannot assign to a read-only property
как это снять


 
Polevi   (2002-07-26 14:27) [25]

2All
вам не надоело еще ?


 
Виктор Щербаков   (2002-07-26 14:31) [26]

Мне уже надоело.
c0pYc@t (26.07.02 14:26)
Вызови Terminate вместо Terminated := true.
Хотя, не понятно, зачем тебе это всё нужно.


 
saxon   (2002-07-26 14:38) [27]

В хелп не пробовали заглянуть?
У меня такое чувство, что там все написанно.


 
c0pYc@t   (2002-07-26 14:40) [28]

На конец то заработало уууууууууф


 
Виктор Щербаков   (2002-07-26 14:40) [29]

saxon © (26.07.02 14:38)
Зачем? Там ведь по английски, да еще и искать надо. Проще сюда заглянуть... и не напрягаться.


 
saxon   (2002-07-26 14:53) [30]

Виктор Щербаков ©
:))


 
Digitman   (2002-07-26 15:09) [31]

Не IronHawk-ли резвится ?)



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

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

Наверх





Память: 0.5 MB
Время: 0.007 c
3-23872
Alexandrda
2002-07-17 10:06
2002.08.08
Смена кодовой страницы у существующей базы программным способом


7-24248
GreatMaster
2002-05-25 17:36
2002.08.08
Ыскейп команды для принтера или как обломать автопрогон страницы?


1-23986
Nostradamus
2002-07-26 23:48
2002.08.08
Интерестно


1-24102
Dark Elf
2002-07-26 16:08
2002.08.08
Chart


1-24057
Brand
2002-07-25 23:32
2002.08.08
3 вопроса по работе с формами.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский