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

Вниз

Внутри СОМ не ловит события WaitForMultipleObjects почему ?   Найти похожие ветки 

 
JibSkeart ©   (2004-04-27 10:30) [0]

в главном потоке СОМ обьекта запускаю другой поток
 hExit = CreateEvent(NULL,TRUE,FALSE,NULL);
 hSend = CreateEvent(NULL,TRUE,FALSE,NULL);
 _beginthread(&StartThread,16384,&par);

реализация StartThread выглядит так


void __cdecl  StartThread(void* Params)
{
  CoInitializeEx(NULL,COINIT_MULTITHREADED);
//  ThreadParam * tp=(ThreadParam *)Params;
  HANDLE pHandles[2];
  pHandles[0] = hExit;
  pHandles[1] = hSend;
  while(1)
  {
    switch(WaitForMultipleObjects(2,pHandles,false,INFINITE))
    {
      case WAIT_OBJECT_0:
        break;
      case WAIT_OBJECT_0+1:
        ShowMessage("hSend");
        break;
     }
  }
 delete tp;
 ::_endthread();
 CoUninitialize();
}


Поток запускается , работает
но если я вызову теперь метод, где будет
SetEvent(hSend) или SetEvent(hExit)
то нифига ни чего не произойдет ,
причем , я ради эксперемента сделал все это в новом приложении ,
не СОМ то там все работает на ура ...


 
clickmaker ©   (2004-04-27 13:30) [1]

А SetEvent нормально выполняется, возвращает не 0 ?


 
JibSkeart ©   (2004-05-05 11:24) [2]

Я уже по другому переделал ,



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

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

Наверх




Память: 0.47 MB
Время: 0.115 c
1-1107172379
ИванИванычч
2005-01-31 14:52
2005.02.13
CRC


8-1098431365
slim
2004-10-22 11:49
2005.02.13
видео буфер


3-1105970218
Shizuku
2005-01-17 16:56
2005.02.13
Временная таблица


4-1103817702
You
2004-12-23 19:01
2005.02.13
Как заставить "чужое" окно минимализироваться?


3-1105541526
SeregaMan
2005-01-12 17:52
2005.02.13
Совершенство при работе с базами данных!