编程中线程的通俗深入理解

1572 人浏览 | 时间: 2015-06-23 16:13:01 | 作者: codexia
    在使用线程前,我们必须了解线程相关的基础知识。线程与进程不一样,线程依托于进程,是一个执行个体。而进程则有更多的资源,比如变量,缓冲等。线程不会独立于进程而存在的。每个进程可以创建很多线程,并且至少要有一个线程,否则操作系统则认为无线程的进程是多余的,没有意义的,所以会清除进程。而第一个线程就是这个进程的主线程。而我们经常写的控制台程序,是单线程程序,这个线程就是主线程。
    在编程中来看,每一个过程或者动作,基本以函数的形式来包装。就好像每一个对象成员函数都完成一个功能一样。线程也是完成特定功能的,所以也是以函数的形式包装起来。只不过,这个函数有一个单独的线程来执行,而一般的成员函数是由主线程来执行,所以,在主线程中执行循环等待,那么主线程其他的动作都得等循环执行完才能执行,因为是同一个线程,必须按顺序。如果是大量的循环,基本就卡住了。所以,创建的新线程就可以将这个循环里的操作接手过去,在后台执行,前台让主线程来执行,那么此时,一般就不会出现卡住的情况。
    而线程对应的函数称为线程函数,可以粗略理解为对象成员函数那样的一个函数而已,没有那么恐怖。因为很多不熟悉的同学,包括我以前,听到回调函数,线程函数等等,心里都发虚,什么回调,什么参数等等,因为不熟悉,就不能简化,从而感觉云里雾里。所以,先放松神经,看完自然也懂了,不过看完一定要练习一下,不然提到这个以后可能时间长了还是会发虚的。
    线程函数和普通函数一样,要返回值,要参数,要函数名。但是线程函数还是与普通的函数有一些特别之处,下面就稍作讲解。
    既然是线程函数,也就是与线程相关。也就是,这个函数只给这类线程执行的,而不会给主线程执行。简单比喻一下,线程相当于一个职员,线程函数相当于一个任务,主线程是领导。主线程要线程去执行这个任务,那线程就一直做这个任务直到完成,如果没有其他任务,那线程就死亡了。第二次,有一个新线程创建了,主线程又叫它去执行这个任务,它
请微信扫码阅读。
为防止恶意爬虫,
已开启反爬机制,
理解哟~~~~
标注
评论
站内搜
百度搜
传送到手机
手机扫码,识别文字,完成传送x
加载中...
标注内容x
加载中...
添加标注x
收藏 0 点赞 0

相关阅读