VC++多线程下内存操作的优化(4)
int count;
threadData actData;
HANDLE* threadHandles;
DWORD startTime;
DWORD stopTime;
DWORD retValue;
unsigned dummy;
/* check parameters */
if(argc<4 || argc>4)
printUsage(argv);
/* get parameters for this run */
threadCount=atoi(argv[1]);
if(threadCount>64)
threadCount=64;
actData.maximumLength=atoi(argv[2])-1;
actData.allocCount=atoi(argv[3]);
threadHandles=(HANDLE*)malloc(threadCount*sizeof(HANDLE));
printf("Test run with %d simultaneous threads: ",threadCount);
startTime=GetTickCount();
for(count=0;count<threadCount;count++)
{
threadHandles[count]=(HANDLE)_beginthreadex(0,0,
&workerThread, (void*)&actData,0,&dummy);
if(threadHandles[count]==(HANDLE)-1)
{
fprintf(stderr,"Error starting worker threads. ");
exit(2);
}
- 上一篇:BMP位图文件结构及VC操作
- 下一篇:在VC++中访问和修改系统注册表