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

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

порт завенршения


mahab ©   (2010-07-01 22:39:00) 

Привет. Есть такой пример использования порта завершения http://code.progler.ru/get/300.Мне не понятен третий параметр ф-ии создания порта и получения статуса.Почитал  в разных источниках:
на http://www.firststeps.ru/mfc/net/socket/r.php?30так- PerHandleKey может быть чем угодно, это тот параметр CompletionKey, который мы передавали для CreateIoCompletionPort, при связывании сокета с портом.
на http://www.intuit.ru/department/pl/cil/13/так -  Существующий порт завершения ввода-вывода можно связать с несколькими различными файлами одновременно; при этом процедура, обслуживающая завершение ввода-вывода, сможет различать, операция с каким именно файлом поставила в очередь данный запрос, с помощью параметра CompletionKey (здесь SOME_NUMBER), назначаемого разработчиком.

В общем хочу сказать каша в голове. Може кто-нибудь простыми словами сказать ЧТО МОЖНО положить в этот параметр и как потом этим воспользоваться


Демо   (2010-07-02 16:19:00) [1]


> положит в порт завершающий ключ именно того потока,


Конечно...


mahab   (2010-07-02 00:08:00) [2]

Если бы по MSDN было понятно все было бы просто. перевод с англ можно иной раз по разному


Rouse_   (2010-07-02 00:01:00) [3]

При вызове GetQueuedCompletionStatus ты получишь значение, которое поместил в третий параметр функции CreateIoCompletionPort. Ну а дальше смотри MSDN, там все достаточно подробно и с примерами разжевано.


mahab   (2010-07-01 23:50:00) [4]

то есть если к примеру у меня три потока, каждый из них ассоциировал свое IO с сущ-им портом, то при завершениии операции над каким либо из этих IO система положит в порт завершающий ключ именно того потока, в чьем IO произошло завершение операции и таким образом я могу различить чье событие произошло . Так что-ли?


Rouse_   (2010-07-01 23:24:00) [5]


> Може кто-нибудь простыми словами сказать ЧТО МОЖНО положить
> в этот параметр и как потом этим воспользоваться

Туда ты можешь положить любые свои данные, которые хочешь передать в каллбэк


Наверх

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