请问高手: 主程序中共有100个线程,每个线程调用以下语句写入数据库:
_ConnectionPtr m_pCont(__uuidof(Connection));
Cstring cs_SQLcmd; m_pCont->Execute((_bstr_t)cs_SQLcmd, NULL, adCmdText); // 由于多线程Execute问题,
m_pCont->Close(); // Close执行时出错,有的线程无法正常写入
m_pCont.Release();
CoUninitialize(); 能否判断Execute执行结束后,在执行Close操作?
_ConnectionPtr m_pCont(__uuidof(Connection));
Cstring cs_SQLcmd; m_pCont->Execute((_bstr_t)cs_SQLcmd, NULL, adCmdText); // 由于多线程Execute问题,
m_pCont->Close(); // Close执行时出错,有的线程无法正常写入
m_pCont.Release();
CoUninitialize(); 能否判断Execute执行结束后,在执行Close操作?
加异常捕获看是什么错误
try
{
//你的ADO代码
}
catch (_com_error& e)
{
AfxMessageBox(e.Description());
}
每个线程一个connection实例试试?
还有,你搞了100个,是否太多了一点啊?