|
|
|
Поведение CWinThread вынесенный в DLL
|
|||
|---|---|---|---|
|
#18+
Пишу класс наследованый от CWinThread и использую его в своей библиотеке (MFC DLL). Наследник СWinThread - CmyThread Наблюдаю следующие странности 1. Если разместить в конструкторе приложения библиотеки код Код: plaintext 1. 2. 3. на создании потока виснет, поэтому создание потока переношу в экспортируемую библиотекой функцию, там не виснет. Чем это обусловлено? 2. В экспортируемой функции сразу после создания потока, я шлю некое сообщение ему и он его не получает Код: plaintext 1. 2. 3. но если подождать некторое время и повторить послание, то поток его получит. Очевидно он был в процессе создания и просто не успел получить мое сообщение, как определить что поток уже готов к приемке? Какие фукнции ожидания порекомендуете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.02.2006, 15:55 |
|
||
|
Поведение CWinThread вынесенный в DLL
|
|||
|---|---|---|---|
|
#18+
dishloПишу класс наследованый от CWinThread и использую его в своей библиотеке (MFC DLL). Наследник СWinThread - CmyThread Наблюдаю следующие странности 1. Если разместить в конструкторе приложения библиотеки код Код: plaintext 1. 2. 3. на создании потока виснет, поэтому создание потока переношу в экспортируемую библиотекой функцию, там не виснет. Видимо вы неправильно конфиругируете сборку этой DLL. ПРочитайте и проверьте макросы AFXDLL и иже с ними. dishlo 2. В экспортируемой функции сразу после создания потока, я шлю некое сообщение ему и он его не получает Код: plaintext 1. 2. 3. но если подождать некторое время и повторить послание, то поток его получит. Очевидно он был в процессе создания и просто не успел получить мое сообщение, как определить что поток уже готов к приемке? WaitForInputIdle Но догадка ваша мне кажется не верна, поскольку вы PostMessage делаете, а это должно помещать сообщение в очередь, и ваш поток его должен получить. Какие фукнции ожидания порекомендуете? Sleep WaitForMultipleObjects WaitForSingleObject ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2006, 11:06 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=372&tid=2031965]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
29ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 302ms |

| 0 / 0 |
