| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1520 人关注过本帖
标题:请教线程问题
只看楼主 加入收藏
wahchun
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-6-2
结帖率:100%
收藏
 问题点数:0 回复次数:9 
请教线程问题
请问单线程与多线程技术各有什么优势与不足,在什么情况下应该使用单线程而非多线程,同样在什么情况下应该使用多线程而非单线程?
搜索更多相关主题的帖子: 线程 
2010-07-01 03:16
chengstone
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:562
专家分:226
注 册:2004-4-3
收藏
得分:0 
多线程很有用
把执行程序比做做一件事情
单线程就是一个人做,多线程就是一个团队合作
单线程自然要把所有的事情包揽。而多线程呢,每个线程分工明确各干一部分,自然效率就提高了。
假如一个程序在做一件事情,如果十分占据CPU,并且是单线程的话,恐怕来不及响应用户的输入。而如果多线程呢,假设是两个线程,一个用来处理事情,一个用来响应用户输入,是不是很方便。

以上只是浅显的说明了一下,很多书上都有相关概念的。

qq:69558139
2010-07-01 10:33
malpower
Rank: 1
等 级:新手上路
帖 子:26
专家分:9
注 册:2010-7-2
收藏
得分:0 
单线程感觉粒度大了点,我也在做内核,刚完成线程创建的系统调用。
2010-07-02 15:57
chengstone
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
帖 子:562
专家分:226
注 册:2004-4-3
收藏
得分:0 
楼上的线程采用的是什么思想呢?  LINUX的线程思想么?

qq:69558139
2010-07-02 16:37
韩明海
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:253
专家分:749
注 册:2010-4-3
收藏
得分:0 
如果多个任务都要同一个数据,而且比较频繁的话就要用单线程,用多线程就要加互斥锁,很容易乱锁
如果需要同时处理几件事,之间关系不是很强,可以用多线程,例如聊天,你写信息的同时也可以去接收别人的信息,这是发送和接收就是两个线程
2010-07-02 17:09
malpower
Rank: 1
等 级:新手上路
帖 子:26
专家分:9
注 册:2010-7-2
收藏
得分:0 
我只是把线程看作共享资源的进程而已。
2010-07-02 19:13
qq980672792
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-7-5
收藏
得分:0 
头大啊
2010-07-06 15:12
zisefengye
Rank: 5Rank: 5
等 级:职业侠客
帖 子:167
专家分:386
注 册:2010-6-27
收藏
得分:0 
首先要明白什么是进程,然后再谈线程。进程是不活跃的,是线程的容器,也就是说同一进程中的所有线程都运行在同一地址空间,都在进程的上下文中。这个可以看看windows核心编程。
2010-07-07 22:14
malpower
Rank: 1
等 级:新手上路
帖 子:26
专家分:9
注 册:2010-7-2
收藏
得分:0 
我参阅过那本著作,但我的观念有些不一样。
呵呵。
可能我是个NC货。
呵呵。
在我的观念里,进程是程序的动态事例,主线程就是进程的具体体现,其他线程从属于主线程。
呵呵,
我很 脑残落。。。。

2010-07-10 00:40
nongzhaobo
Rank: 3Rank: 3
来 自:广西南宁
等 级:论坛游侠
帖 子:59
专家分:155
注 册:2012-4-8
收藏
得分:0 
我的两线程...
2012-04-24 11:49
快速回复:请教线程问题
数据加载中...
 
   



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

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