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

Вниз

Получение хэндла потока   Найти похожие ветки 

 
Andjey   (2009-12-02 15:02) [0]

Выполняя тестовый пример с потоками каждый раз получаю предупреждение в этой строке:

 fMonDirMain.Tag := Integer(TMonDirThread.Create("d:\Temp"));

предупреждение:
[Warning] ufMain.pas(61): Unsafe typecast of "TMonDirThread" to "Integer"
Я конечно знаю, что этого можно избежать, отключив в опциях проекта Compiler Messages - Unsafe typecast. Но это я визуальное предупреждение отключу. А мне интересно понять почему оно появляется, если при создании потока он выдает дескриптор, назначенный ОС типа Integer, вроде все правильно. В момент приведения, что-ли?


 
Rouse_ ©   (2009-12-02 15:07) [1]

Этим кодом ты получаешь не описатель потока а указатель на экземпляр класса TMonDirThread


 
Anatoly Podgoretsky ©   (2009-12-02 15:11) [2]

А указатель имеет диапахон от 0 до $FFFFFFFF, что много больше Integer и кроме того беззнаковое.


 
kyn66 ©   (2009-12-02 15:14) [3]

Да, но любой указатель мы всегда можем привести(что здесь и делаем) к типу Integer...


 
Andjey   (2009-12-02 15:16) [4]


> Rouse_ ©   (02.12.09 15:07) [1]
> Этим кодом ты получаешь не описатель потока а указатель
> на экземпляр класса TMonDirThread


Я и имел ввиду указатель, извените...


 
Andjey   (2009-12-02 15:33) [5]


> Anatoly Podgoretsky ©   (02.12.09 15:11) [2]
> А указатель имеет диапахон от 0 до $FFFFFFFF, что много
> больше Integer и кроме того беззнаковое.

А что вы этим хотели сказать? Что данное приведение к Integer может не захватить тиапазан , который ему доступен? Поэтому просто предупреждение?


 
Игорь Шевченко ©   (2009-12-02 15:41) [6]

такое преобразование несовместимо с .Net, поэтому и выдается предупреждение. В D2006, например, эти предупреждения по умолчанию отключены, а в 7 они только появились, ну и ура, давайте считать, что все переходят на .Net и выдавать их.


 
Andjey   (2009-12-02 15:45) [7]


> Игорь Шевченко ©   (02.12.09 15:41) [6]

Т.е. их(там их всего 3, на эту тему) безболезненно можно отключить и не заморачиваться?


 
Игорь Шевченко ©   (2009-12-02 16:10) [8]

Andjey   (02.12.09 15:45) [7]

Каждый для себя сам решает


 
Andjey   (2009-12-02 16:34) [9]

Все понятно, спасибо.


 
Anatoly Podgoretsky ©   (2009-12-02 16:42) [10]


> Т.е. их(там их всего 3, на эту тему) безболезненно можно
> отключить и не заморачиваться?

Только приведение не ограничивается этим типом.



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

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

Наверх




Память: 0.49 MB
Время: 0.008 c
2-1259405265
Студент_ПИ
2009-11-28 13:47
2010.01.24
Информатика. Задача на кол-во информации.


1-1228253040
asail
2008-12-03 00:24
2010.01.24
Не рабтает смена лотка в QuickReport


4-1217702866
kalexi
2008-08-02 22:47
2010.01.24
Как вызвать и обработать стандартный диалог открытия файлов?


2-1259631171
des
2009-12-01 04:32
2010.01.24
Как отследить и заблокировать?


2-1260086750
FEV
2009-12-06 11:05
2010.01.24
Изображения из Access в Delphi