用C语言开多线程,想让多个相同的子线程同时运行,怎么实现

看了用HANDLE 线程名;
线程名=CreateThread(NULL,0,程序名,NULL,0,NULL);
的方式开,但是我想让这一个程序作为多个线程一起开的话怎么办呢,总不能开200个 ,就写200次吧。
用循环的话线程名又不一样,而且这个线程名也不是数字,不能用for,然后i++那样。
求问C或C++,而不是java。

工作线程是处理后台工作的,创建一个线程非常简单,只需要两步:实线线程函数和开始线程.不需要由CWinThread派生类,你可以不加修改地使用CWinThread。
AfxBeginThread有两种形式,一种是用来创建用户界面线程的,另一种就是用来创建工作线程的.为了开始执行线程,只需要向AfxBeginThread提供下面的参数就可以了.
1.线程函数的地址
2.传送到线程函数的参数
3.(可选的)线程的优先级,可参阅::SetThreadPriority
4.(可选的)线程开始时候的状态,可设置为CREATE_SUSPENEDE
5.(可选的)线程的安全属性,请参阅SECURITY_ATTRIBUTES
实例代码
UINT ThreadProc(LPVOID pParam)
{
return 0;//线程成功完成
}
CWinThread* AfxBeginThreadProc,//线程函数地址
LPVOID pParam,//线程参数
int nPriority=THREAD+PRIORITY_NOMAL,//线程优先级
int nStackSize=0,//线程堆栈大小,默认为1M
DWORD dwCreateFlags=0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs=NULL
);
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-05-19
线程名其实是一个地址,所以你要开200个线程,就可以做两百次循环,就可以了CreateThread()的返回HANDLE报存在一个数组里就可以了

HANDLE hThread[200];
for(int i = 0;i<200; i++)
hThread[i] = CreateThread(NULL,0,程序名,NULL,0,NULL);

这样就可以了本回答被提问者采纳
第2个回答  2014-08-14
你可以用字符串,比如说abcd再连上i作为线程名啊

c语言如何实现多线程同时运行
在多线程环境中,线程之间的同步和互斥是非常重要的,以避免数据竞争和其他并发问题。可以使用互斥锁和条件变量等机制来实现线程间的同步。互斥锁用于保护共享资源,确保一次只有一个线程可以访问它们。条件变量则用于线程之间的通信,允许一个线程等待另一个线程完成某项任务。5. 线程的结束和等待:每个线程...

c语言如何实现多线程同时运行
一、引入线程库 在C语言中实现多线程,首先需要引入相关的线程库。常见的线程库有pthreads库,它是可移植的,可以在多种操作系统上运行。通过包含对应的头文件,我们可以使用其中的函数来创建和管理线程。二、创建线程 在引入了线程库之后,我们需要创建线程。可以使用pthread_create函数来创建一个新的线程。

C语言如何实现多线程同时运行
要实现C语言的多线程同时运行,首先打开项目设置。在菜单栏中选择"Project"选项,向下拉选择"Project options...",这是对项目属性进行配置的地方。接下来,进入对话框并切换到"Compiler"选项卡。在这里,重要一步是更改"Runtime Library"设置,将其更改为"Multithreaded (LIB)",这有助于支持多线程编程。

C语言如何实现多线程同时运行
1、点击菜单栏的“Project”选项卡,下拉列表的最后一项“Project options...”是对当前工程的的属性进行设置的。2、选择弹出对话框中的“Compiler”选项卡。3、将其中的“Runtime Library”的选择改为“Multithreaded (LIB)”。4、将看到对话框最下面的文本框中发生了一些变化,新增了“-MT”选项,这...

C语言如何实现多线程同时运行
工作线程是处理后台工作的。创建一个线程需要两步:1、实线线程函数和开始线程,不需要由CWinThread派生类。2、可以不加修改地使用CWinThread。AfxBeginThread有两种形式,一种是用来创建用户界面线程的,另一种就是用来创建工作线程的.为了开始执行线程,只需要向AfxBeginThread提供一定的参数即可。

c语言怎么同时运行4段
可以使用多线程的办法,同时运行的方法如下:1)使用void*myfunc(void*args){;2)在intmain(){limian写四组pthread,pthread_create(),pthread_join();3)最后return0。多线程(multithreading),是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间...

C语言能实现多线程么
创建多线程。多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,也就是说允许单个程序创建多个并行执行的线程来完成各自的任务。C语言最初并未设计多线程的机制,随着软硬件的发展及需求的发展,C语言才开发了线程库以支持多线程的操作和应用。

线程和进程,怎么实现线程的同步
很多只允许应用程序运行一次的实例就是用互斥方法来实现的。当一个互斥对象不再被一个线程所拥有,它就处于发信号状态。此时首先调用waitForsingleobject()的线程就成为该互斥对象的拥有者,此互斥对象设为不发信号状态。当线程调用releaseMutex()并传递一个互斥对象的句柄作为参数时,这种拥有关系就被解除,...

C语言怎么同时运行多个程序
就是使用多线程的。只要涉及到同时运行的问题就要想到使用多线程来解决。比如我们复制文件的时候,会边复制边显示一个进度条这个是最明显和常见的多线程例子

C语言多线程的操作步骤
也就是说当程序运行到这个地方时,程序会先停止,然后等线程id为thread的这个线程返回,然后程序才会断续执行。函数原型:intpthread_join(pthread_tthread, void **value_ptr);参数说明如下:thread等待退出线程的线程号;value_ptr退出线程的返回值。返回值:若成功,则返回0;若失败,则返回错误号。线...

相似回答