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

Вниз

Не стартует тред в вынь98. В XP всё нормально.   Найти похожие ветки 

 
Cybernik ©   (2006-02-28 18:18) [0]

Описываю тред:
type
 TScanThread = class(TThread)
 protected
   procedure Execute; override;
 end;

Создаю тред на OnShow формы:
 ScanThread := TScanThread.Create(False);
 ScanThread.OnTerminate:=ThreadTerminate;

Не работает на выньдовс 98 почему-то такая конструкция. На ХП всё запускается замечательно. Не обяснит мне кто-нибудь почему так?


 
begin...end ©   (2006-02-28 18:33) [1]

> Cybernik ©   (28.02.06 18:18)

> Не работает на выньдовс 98 почему-то такая конструкция.
Из чего сделан такой вывод? Методу Execute управление передаётся?

А конструкция -- не очень хорошая. К моменту назначения свойства OnTerminate поток может уже завершиться, и вызова метода ThreadTerminate не произойдёт.


 
Cybernik ©   (2006-02-28 18:39) [2]

Ну если же в WinXP поток работает - то видимо управление передаётся же!
А как предлагаешь сделать лучше конструкцию? так:
ScanThread := TScanThread.Create(True);
ScanThread.OnTerminate:=ThreadTerminate;
ScanThread.Resume;

?


 
begin...end ©   (2006-02-28 18:47) [3]

> Cybernik ©   (28.02.06 18:39) [2]

> Ну если же в WinXP поток работает - то видимо управление
> передаётся же!

Я не про XP спрашиваю, а про 98, вообще-то. А если в Win98 управление на Execute передаётся, то тред как раз стартует -- о какой проблеме в таком случае речь?

> ScanThread := TScanThread.Create(True);
> ScanThread.OnTerminate:=ThreadTerminate;
> ScanThread.Resume;

Да, можно так.


 
Cybernik ©   (2006-02-28 18:57) [4]

Знал бы я как проверить передаётся оно или нет! Видимо что нет, раз сканирование не запускается. Кусок кода сам по себе рабочий т.к. проверял его в 98 не в треде. Значит вся проблема в запуске треда я так понимаю а именно в передаче управлению Execute


 
begin...end ©   (2006-02-28 19:02) [5]

> Cybernik ©   (28.02.06 18:57) [4]
> Знал бы я как проверить передаётся оно или нет!

Отладчиком.



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

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

Наверх




Память: 0.45 MB
Время: 0.043 c
1-1141213648
Aleksandr.
2006-03-01 14:47
2006.04.02
Можно ли как-то через CreateParams задать немодальной форме


2-1142424313
Azeem
2006-03-15 15:05
2006.04.02
Непонятная ошибка


6-1135108056
vladik
2005-12-20 22:47
2006.04.02
Tidftp + буква Я


15-1142168818
DillerXX
2006-03-12 16:06
2006.04.02
Подскажите такую программу


2-1142800561
Quattro
2006-03-19 23:36
2006.04.02
Окно-заставка





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