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

问题描述

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

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

解决方案

Windows多线程编程
多线程编程windows
Windows 下多线程编程

解决方案二:

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]);
}

时间: 2024-11-08 20:24:56

c++在windows操作系统下的多线程编程?的相关文章

Windows平台下的多线程编程

    线程是进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享所有的进程资源,包括打开的文件.信号标识及动态分配的内存等.一个进程内的所有线程使用同一个地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行以及什么时候执行线程.线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完后再执行.在多处理器的机器上,调度程序可将多个线程放到不同的处理器上去运行,这样可使处理器任务平衡,并提高系统的运行效率.  Windows是一种多任务的操作系统,在Win

《C语言编程魔法书:基于C11标准》——第3章 C语言编程的环境搭建3.1 Windows操作系统下搭建C语言编程环境

第3章 C语言编程的环境搭建 我们在第2章讲述了学习C语言所必需的一些预备知识.本章将给大家介绍常用桌面操作系统下的C语言环境搭建.这里所讲述的C语言编译器以及集成开发环境(IDE)都是可合法免费下载的,本书不鼓励各位使用盗版或破解软件,所以下面会列出下载这些合法免费软件的官方链接,大家把编程环境搭建完之后即可上机实践编程. 3.1 Windows操作系统下搭建C语言编程环境 Windows操作系统下默认不自带任何C语言编译器,大家必须从网上下载自己所需要的C语言编译器.如果各位想通过C语言开发

.Net下的多线程编程

多线程是很多驾驭体系所具有的特性,它能大大提升程序的运行效率,因此多线程编程技艺为编程者遍及关切.眼前微软的.Net战略正进一步推进,各种相干的技艺正为盛大编程者所接纳,同样在.Net中多线程编程技艺具有 ... 多线程是很多驾驭体系所具有的特性,它能大大提升程序的运行效率,因此多线程编程技艺为编程者遍及关切.眼前微软的.Net战略正进一步推进,各种相干的技艺正为盛大编程者所接纳,同样在.Net中多线程编程技艺具有相称首要的地位.本文我就向大众介绍在.Net下进行多线程编程的基本办法和程序.开始

浅析.Net下的多线程编程

浅析.Net下的多线程编程多线程是许多操作系统所具有的特性,它能大大提高程序的运行效率,所以多线程编程技术为编程者广泛关注.目前微软的.Net战略正进一步推进,各种相关的技术正为广大编程者所接受,同样在.Net中多线程编程技术具有相当重要的地位.本文我就向大家介绍在.Net下进行多线程编程的基本方法和步骤. 开始新线程 在.Net下创建一个新线程是非常容易的,你可以通过以下的语句来开始一个新的线程: Thread thread = new Thread (new ThreadStart (Thr

linux-32位windows操作系统下可以装64位Linux虚拟机吗?

问题描述 32位windows操作系统下可以装64位Linux虚拟机吗? 10C 最近在学Hadoop,然后很多教程上都是64位的,但是我的电脑是32位的,那我能装一个64位的Linux虚拟机,然后再在Linux虚拟机里装Hadoop64位的吗??(无论答案是"yes"or ""no "" 答案中如果能说明原由,那便是极好的~~~) 解决方案 100%不行,64位主机才支持64位虚拟机,同时也支持32位虚拟机,反过来不行.(bochs qemu之

解密-Standford大学在windows操作系统下开发的ibe-0.7.2-win.zip如何使用?

问题描述 Standford大学在windows操作系统下开发的ibe-0.7.2-win.zip如何使用? http://crypto.stanford.edu/ibe/download.html 在这个链接下载了ibe-0.7.2-win.zip文件,在指示文件中指出配置文件gen.cnf和ibe.cnf的编辑问题,这两个文件如何进行修改,才是正确的配置,成功配置后才可以进行加密 私钥分发,私钥生成,解密的命令操作,请给予指导意见,谢谢啦.

《Arduino奇妙之旅:智能车趣味制作天龙八步》一2.3.1 Windows操作系统下的注意事项

2.3.1 Windows操作系统下的注意事项 在Windows操作系统下安装这个软件时,有一些事项,这里想与大家分享一下.如果你习惯了只是简单插入设备,然后让它工作,那么在Windows操作系统下安装这个软件,对你来说可能会有点复杂.因为你必须手动安装驱动,而不能盲目地点击"下一步"按钮.下面是在Windows 7上安装IDE这个软件的过程中得到的一点启示,希望对大家有所帮助. 提示 先浏览这部分的背景信息,然后登录arduino.cc找到IDE的官方安装说明,再根据提示安装,希望看

Linux下的多线程编程(三)_Linux

   下面先来一个实例.我们通过创建两个线程来实现对一个数的递加. 或许这个实例没有实际运用的价值,但是稍微改动一下,我们就可以用到其他地方去拉. 下面是我们的代码: /*thread_example.c : c multiple thread programming in linux *author : falcon *E-mail : tunzhj03@st.lzu.edu.cn */ #include <pthread.h> #include <stdio.h> #inclu

在Python下尝试多线程编程

  这篇文章主要介绍了在Python下多线程编程的尝试,由于GIL的存在,多线程在Python开发领域一直是个热门问题,需要的朋友可以参考下 多任务可以由多进程完成,也可以由一个进程内的多线程完成. 我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程. 由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多线程的支持,Python也不例外,并且,Python的线程是真正的Posix Thread,而不是模拟出来的线程. Python的标准库提供了两个模块:thread和thr