为了账号安全,请及时绑定邮箱和手机立即绑定

如何在普通C中启动线程?

如何在普通C中启动线程?

C
红糖糍粑 2019-11-30 13:40:21
我已经在C语言中使用fork()启动了另一个进程。如何启动新线程?
查看完整描述

3 回答

?
九州编程

TA贡献1785条经验 获得超4个赞

自从您提到fork()以来,我假设您正在使用类似Unix的系统,在这种情况下,您要使用POSIX线程(通常称为pthreads)。


具体来说,pthread_create()是创建新线程所需的函数。它的参数是:


int  pthread_create(pthread_t  *  thread, pthread_attr_t * attr, void *

   (*start_routine)(void *), void * arg);

第一个参数是返回的线程ID指针。第二个参数是线程参数,除非您要以特定优先级启动线程,否则它可以为NULL。第三个参数是线程执行的函数。第四个参数是执行时传递给线程函数的单个参数。


查看完整回答
反对 回复 2019-11-30
?
倚天杖

TA贡献1828条经验 获得超3个赞

线程不是C标准的一部分,因此使用线程的唯一方法是使用某些库(例如:Unix / Linux中的POSIX线程,_beginthread / _beginthreadex,如果您想使用该线程中的C运行时或仅使用CreateThread Win32 API)


查看完整回答
反对 回复 2019-11-30
  • 3 回答
  • 0 关注
  • 697 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信