ОК, я немного запутался здесь. Работает следующий код:
HANDLE CreateSideThread()
{
DWORD dwGenericThread;
HANDLE hThread1 = CreateThread(NULL, 0, CallBackFunc, NULL, 0, &dwGenericThread);
return hThread1;
}
int main()
{
HANDLE Thread1;
Thread1 = CreateSideThread();
WaitForSingleObject(hThread1, INFINITE);
SomeOtherFunction();
return 0;
}
Программа делает другие вещи, но вы поняли идею. Он в основном создает новый поток и выполняет все, что есть в CallBackFunc (это бесконечный цикл, который проверяет состояние БД).
Теперь, если я удаляю WaitForSingleObject (), тогда программа даже не будет пытаться один раз вызвать CallBackFunc и выполнить SomeOtherFunction ().
Какой смысл тогда нить? Я имею в виду, я запутался здесь.
То, что я пытаюсь сделать, это вызвать этот поток с проверкой состояния базы данных и поддерживать этот поток, пока я продолжаю свою программу, вызывая другие функции.
Что я делаю не так?
Пожалуйста, отправьте образец фрагмента.
Спасибо