DWORD st;
for (int i = 1; i <= pwth.GetSize(); i++)
{
if (pwth[i] != NULL)
{
::TerminateThread(pwth[i]->m_hThread, st);
::CloseHandle(pwth[i]->m_hThread);
delete pwth[i];
}
}
Данная процедура происходит периодически и после достаточно большого количества итераций выдает сообщение "Ошибка создания потока расчета".
Поскольку используется m_bAutoDelete=false, то явно просматривается проблема некорректного удаления объекта CWinthread. Как это сделать корректно.
При попытке использования delete pwth[i] выдает ошибку. CAVector — самопальный массив.