Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Thanks! 25.05.01 16:10 Число просмотров: 968
Автор: kabanchik Статус: Незарегистрированный пользователь
|
Спасибо. Кажись это то что надо. Хотя придется с кернелом поиграть.
Для внятности объясню ситуациу, а то тут я прочел ......
Короче у меня есть класс который работает с потоками и с межпоточными мессагами. к нему прицепил сокет, который в дальнейшем будет крутится как сервер. Каждый раз, когда к серверу кто то коннектится, запускается новый поток со своим сокетом и идет обмен информации через мессаги (PostThreadMessage(DWORD nThreadId !!!!!!!, ....);). тут в качестве LPARAM передаю HANDLE потока, дальше поймете почему (см. FromHandle). Сокеты АСИНХРОННЫЕ. мессаги поддерживают уведомление о событии ... и не только.
Если все создается через мои классы, проблем нет ни каких, я держу и HANDLE и ID потока.
Я написал свой ThreadHandleMap класс, через него все четко идет. Одним словом реализовал аналог FromHandle().
Так вот, для большей гибкости класса мне надо было не только промаппировать потоки созданные моим классом, но и любой. Т.е. FromHandleTemporary() или AttachThread();
2 XR:
Теперь предстовляете если бы мне в такой куче мессаг и потоков, пришлось бы ппросканить весь процесс особенно этот вариант:
for (DWORD nId = 0; nId < 0xFFFFFFFF; nId ++)
HANDLE hThread = OpenThread(....)
тут не то что бы тачка сдохла ..........
кроме того для 2К можно воспользоваться THREADENTRY32 - Thread32First и т.д.
поэтому нужна была фигнюшка, которая при AttachThread() нашла бы ID потока.
по началу хотел поставить жесткое ограничение, ели вызвал FromHandleTemporary или AttachThread, то обязательно указать ID в том числе, но теперь кажется все решится.
2 PS: а структура тут не вписывается, я уже думал об этом, но проблема все равно не решается.
И на всякий случай, если есть какие нить идеи и предложения насчет messageing-а, то выслушаю. Класс еще в стадии развития, поэтому могу еще перестроить.
|
|
|