Главная страница
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.48 MB
Время: 0.029 c
2-1142708176
Fenix
2006-03-18 21:56
2006.04.02
Отображение иконок в TreeView.


9-1127640112
Kovenos
2005-09-25 13:21
2006.04.02
Как выщитать матрицу.


4-1136977878
Free0n
2006-01-11 14:11
2006.04.02
Нужно обнаружить одну хитрую программу....


15-1141744728
mr.HelpMe
2006-03-07 18:18
2006.04.02
Что делать если я забыл свой пароль? (к админам)


2-1142597681
nyron
2006-03-17 15:14
2006.04.02
помогите плиз с excel