c++在windows操作系统下的多线程编程?

想在windows操作系统上的VS2010将代码实现多线程并行执行,可是之前没接触过,不知道怎么操作编代码,求大神指导!!!

http://www.cnblogs.com/china-victory/archive/2012/11/09/2763187.html

把任务分割号,细分好,各个线程任务分好
其他都不复杂,虽然会有各种问题,但是都有对应的解决方案。

就是这样,支持,支持,很是支持!

DWORD func(LPVOID lp)
{
return 0;
}

用CreateThread(0,0,(LPTHREAD_START_ROUTINE)func,Param,&Threadid)

就可以创建一个线程了

实现多线程并行执行?

是多线程,还是并行,还是多线程且并行。

多线程无非就是写一个线程函数,然后创建多个线程(用同一个函数),但是并不并行的要看cpu和操作系统的调度,

而并行的话应该是运用开发工具提供的并行功能,能实现 在单个线程中的并行操作,

有两条路:第一条是使用c++语言的多线程库,例如boost中的多线程库,比较简单;
第二条是直接使用windows的多线程api,例如CreateThread,比较复杂。

就看你自己的能力了。

HANDLE hs[count]={0};
int xok=0;
DWORD func(LPVOID lp)
{

xok++;
WaitForSingleObjects(hs[lp]...)
do something

return 0;
}
for(int i=0;i<count;i++)
{
HANDLE h=CreateEvent(NULL,..;
hs[i]=h;
CreateThread(0,0,(LPTHREAD_START_ROUTINE)func,i,&Threadid);
}
while(xok!=count) Sleep(10);
for(int i=0;i<count;i++)
{
SetEvent(hs[i]);
}