黑马程序员--浅谈进程与线程

          

 

 

(1)简单来说,一个应用程序要运行,就要起一个进程,而进程在运行的时候,又分为很多

个小线程运行,一个进程启动了,至少要有一个线程,即主线程,UI线程,还会有很多线程

在辅助所在进程准确运行,在一个进程执行过程中,线程的运行是交替进行的,计算机的频

率非常高,刷新周期特别快,所以算机使用者根本感觉不到程序的中断。线程的启动可以看

做一个事件的触发,所以要有一个监听者对其作出反应。引入多线程可以让CPU "同时" 做

多件事情,可以提高系统资源利用率。引入多线程可以避免UI线程假死现象。用后台线程来

执行UI界面触发的事件(找个工人做点事)。线程创建时需要传入一个方法,这个方法实际

上是传给了一个委托,因为线程对象的构造方法需要一个委托类型的参数,该委托不能有返

回值

(2)创建线程的四个步骤:
1、编写产生线程所要执行的方法
2、引用System.Threading命名空间
3、实例化Thread类,并传入一个执行线程所要运行方法的委托。

(这个时候线程已经产生, 但是还没有运行)
4、调用Thread实例的start方法,标记该线程可以被CPU执行了,但具体执行时间由CPU

  决定。

(3)线程分为前台线程和后台线程

前台线程:只有所有的前台线程都关闭了,程序才会关闭。
后台线程:只要前台线程关闭了,后台线程就自动结束了。

线程重入问题,CPU切换速度非常快,所以线程之间会共享资源,但是线程自身是独立的。

(4)带参数线程
        创建线程时需要一个参数,而且是Object类型。
        调用Start方法时需要传递实参。

      



posted on 2011-11-30 20:11  董志  阅读(165)  评论(0编辑  收藏  举报

导航