51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 6043|回复: 10
打印 上一主题 下一主题

[讨论] 线程与进程的区别

[复制链接]

该用户从未签到

1#
发表于 2007-10-10 14:32:19 | 显示全部楼层
单线程就是进程只有一个线程 。
多线程是相对于单线程而言的,指的是在一个程序中可以定义多个线程并同时执行。
每个程序执行时都会产生一个进程,而每一个进程至少要有一个主线程。这个线程就是进程执行的一条线索,除了主线程外还可以给进程增加其它的线程,也即增加其它的执行线索,由此在某种程度上可以看成是给一个应用程序增加了多任务功能。当程序运行后,可以根据各种条件挂起或运行这些线程,因为这些线程是并发运行的(其实在同一时间还是只能执行一个线程,只是给每个线程分配一个时间片,在某个时间片内,只能一个线程执行,然后按照某种策略换其他线程执行。由于时间片很短,这样给人的感觉是同时有好多线程在执行),从而使一个应用程序有了多任务的功能。如果一个进程只有一个线程,即单线程,当程序运行后,必须等这个任务结束后才能开始新的任务,因为没有结束的线程。所以如果统计代码行的程序用单线程实现的,必须等统计结束才能结束,而如果用多线程实现,除了执行的主线程外,还可以有结束的线程,这样当程序执行时,想结束就可以切换到结束的线程来结束程序。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /2 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-6-10 08:43 , Processed in 0.064376 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表