标题:谁能说下liunx下C语言的线程问题啊。。
只看楼主
cz737
Rank: 2
等 级:论坛游民
帖 子:85
专家分:20
注 册:2010-7-7
结帖率:96.3%
已结贴  问题点数:10 回复次数:3 
谁能说下liunx下C语言的线程问题啊。。
刚问别人线程要怎么理解,他说其实线程就是一个函数,可以自己控制运行开关。。。
我的理解吧就是自己创建一个线程。然后加条件判断就可以控制开关。。别的不知道了。。。
理解不深,用起来还是有点难啊。。。
谁能简洁的解释下。。。
搜索更多相关主题的帖子: C语言 线程 liunx 
2010-11-04 00:06
kingsroot
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:284
专家分:1159
注 册:2010-3-28
得分:5 
线程就像一个部分  上面发了一个任务给部门经理(主线程)  然后部门经理把任务分配给部门的各个人员  每个人做自己负责的事(子线程)  最终每个人完成了事情过后  整个事情也就做完了!就这么简单
2010-11-04 09:52
kwbplcz
Rank: 2
等 级:论坛游民
帖 子:12
专家分:51
注 册:2010-11-3
得分:5 
线程就是一个进程里运行多个“子工作”;

<1> 工作
每一个“子工作”要做的事情由你创建线程时候指定的函数来决定,
线程运行后,则开始执行这个函数;

<2> 停止
当线程函数运行到最后一句,也就是说这个函数执行结束了,则线程也停止了;

<3> 主线程
其实一个进程创建起来后,至少有一个线程在运行,
例如,C里的main()函数,
该函数也是由一个线程来运行的,但是被成为“主线程”,
main()函数运行完了,则主线程也停止了,接着进程也停止了;

<4> 子线程
对于C来说,在main()函数运行期间所创建的线程就是“子线程”;

<5> 运行开关
其实本身不存在所谓运行开关的,
线程创建起来后,则开始运行你所指定的那个函数,
该函数只要还没退出,则线程一直在运行,
所以,这个开关可以完全由你用代码来控制;

<6> LINUX下的线程
LINUX,或Windows,有不同的API提供来让你创建线程;具体参阅LINUX的文档即可;

<7> 线程的其他控制
不排除有对应的API来让你暂停线程,挂起线程等,
但你可以简单控制,线程一直在运行,
而暂停则通过你的线程函数来自行决定;

[ 本帖最后由 kwbplcz 于 2010-11-4 09:57 编辑 ]

真的不想研究技术.
2010-11-04 09:56
peijiangyun
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-5-14
得分:0 
我是新手,请问一下线程池的原理
2013-05-14 13:55



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-324916-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019232 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved