-
-
xxxxxxxxxxxx
-
发表于:
2012-2-19 22:10
5628
-
所有代码一块发上来,
#include <windows.h>
#include <stdio.h>
HANDLE hFile;
//定义临界区对象
CRITICAL_SECTION cs;
//写文件线程函数
DWORD WINAPI Thread(LPVOID lpParam)
{
//得到是哪个线程
int n=(int)lpParam;
DWORD dwWrite;
for (int i=0;i<10000;i++)
{ //进入临界区
EnterCriticalSection(&cs);
char Data[512]="11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111-----------------------by 716------------------------\r\n-------------------http://www.syrjs.com-------------------";
//写入文件
WriteFile(hFile,&Data,strlen(Data),&dwWrite,NULL);
//出临界区
LeaveCriticalSection(&cs);
}
//输出哪个线程运行结束
printf("第%d号线程结束运行\n",n);
return 0;
}
int main(int argc, char* argv[])
{
//创建文件
hFile=CreateFile("c:\\hack.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
if(hFile==INVALID_HANDLE_VALUE)
{
printf("CreateFile Error\n");
return 0;
}
DWORD ThreadId;
HANDLE hThread[5];
//初始化临界区对象
InitializeCriticalSection(&cs);
//创建5个线程
for(int i=0;i<111;i++)
{
hThread[i]=CreateThread(NULL,0,Thread,LPVOID(i+1),0,&ThreadId);
printf("第%d号线程创建成功\n",i+1);
}
//等待五个线程运行结束
WaitForMultipleObjects(5,hThread,true,INFINITE);
//删除临界区对象
DeleteCriticalSection(&cs);
//关闭文件句柄
CloseHandle(hFile);
getchar();
return 0;
}
#include <iostream>
#include <windows.h>
int main(int argc, char* argv[])
{
SYSTEMTIME time;
GetLocalTime(&time);
printf("当前时间为:%2d:%2d:%2d\n",time.wHour,time.wMinute,time.wSecond);
getchar();
return 0;
}
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课