Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отличие Handle и ThreadId


panov ©   (2002-01-09 17:49:00) 

Чем отличаются вышеуказанные свойства в классе TThread ?
Для чего используется каждый из них?


panov   (2002-01-09 19:27:00) [1]

Спасибо большое.


Юрий Зотов   (2002-01-09 18:58:00) [2]

> для доступа к потоку нужно использовать ThreadId, а не Handle

Для доступа к потоку, КАК К ОБЪЕКТУ Delphiнужно использовать обычную ссылку на этот объект. А для доступа к потоку ЧЕРЕЗ ФУНКЦИЮ APIнужно использовать то, что требует эта функция в своих параметрах. Это может быть и ID, и Handle.

> например, для посылки сообщений в поток

Если сообщение посылается ОКНУ, созданному потоком, то нужно использовать хэндл этого ОКНА. А если используется PostThreadMessage, то там четко сказано: первый параметр - ID.

> И значит ли это, что Handle потока совпадает с Handle
> процесса, в контексте которого работает поток?

Нет, конечно. Процесс и поток - это РАЗНЫЕобъекты ядра, поэтому и хэндлы у них тоже РАЗНЫЕ. Кроме того, процесс может иметь НЕСКОЛЬКОпотоков, как же у всех у них могут быть одинаковые хэндлы?


panov   (2002-01-09 18:07:00) [3]

И значит ли это, что Handle потока совпадает с Handle процесса, в контексте которого работает поток?


panov   (2002-01-09 18:05:00) [4]

Спасибо.
Получается, что для доступа к потоку нужно использовать ThreadId, а не Handle, например, для посылки сообщений в поток?


Юрий Зотов   (2002-01-09 18:01:00) [5]

Это те самые ID и Handle, которые назначила потоку система. Картина здесь та же, что с ID и Handle для процессов:
ID - уникальный номер во всей системе.
Handle - действительно в контексте данного процесса.

Используются, например, для вызова функций API.


Наверх

Титульная страница Поиск, карта сайта Написать письмо