c语言怎么创建线程和使用

c语言怎么创建线程和使用,第1张

用 pthread_t创建线程名字。然后pthread_create开辟线程。

具体使用。

比如有一个函数

void *hello()

{

printf("create pthread!\n");

}

,然后在main函数里面调用,

int main()

{

pthread_t a_thread;

pthread_create(&a_thread, NULL, (void *)hello, NULL)

}

这样就完成了hello()函数的创建和使用,接下来hello函数就会在一个线程中运行

下面为C语言调用WIN API实现创建线程:

1,导入<windows.h>头文件

2,声明实现方法DWORD WINAPI ThreadProc1( LPVOID lpParam ) {}

3,在main()方法中调用 CreateThread(NULL,0 ,ThreadProc1,NULL,0,NULL)

要注意的是主线程不能结束,如果主线程结束,则它的子线程也会被杀死。

#include <windows.h>

#include <stdio.h>

#include<time.h>

DWORD WINAPI ThreadProc1( LPVOID lpParam )

{

int i=0

time_t timer

while(1)

{

timer=time(NULL)

printf("The current time is: %s\n",asctime(localtime(&timer)))

sleep(1)

}

}

void main()

{

int i=0

//让主线程进入循环,主线程若退出,子线程1,2会被系统“杀死”

//创建线程1

CreateThread(

NULL, // default security attributes

0, // use default stack size

ThreadProc1,// thread function

NULL, // argument to thread function

0, // use default creation flags

NULL) // returns the thread identifier

for()

{

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11398651.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存