これは MFC プロジェクトの一部です。クラッシュします。1.配列の配列をできるだけ早くバイナリファイルに書き込もうとしています。EnterCriticalSection などのクラッシュを回避するためにさまざまな方法を使用しましたが、機能しませんでした。これはより大きなプロジェクトの例です。私はそのようなアプローチの実現可能性を実践しようとしています。
char filename[200];
UINT ThreadProc( LPVOID Param );
int *BUF[10];
int count = 0;
void CThreadDlg::OnOK()
{
for (int i = 0; i < 10; ++i)
{
BUF[i] = new int [500];
for (int j = 0; j < 500; ++j)
{
BUF[i][j] = i + j;
}
AfxBeginThread(ThreadProc,NULL,THREAD_PRIORITY_NORMAL,0,0,NULL);
count = count + 1;
}
for (int i = 0; i < 10; ++i)
{
delete [] BUF[i];
BUF[i] = NULL;
}
}
UINT ThreadProc( LPVOID Param )
{
sprintf_s(filename, "C:\\Temp\\test%d.bin", count);
std::ofstream file;
file.open(filename, std::ios::out);
file.write((char *)BUF[count], 4*500);
file.close();
file.clear();
return TRUE;
}