今天讲的是线程,这个东西不是很陌生,以前接触过,不过了解的那些或许连入门的技术都没达到,不过也算是预习吧,总比什么都不知道好,其实课前预习是一种好的习惯,下边来说说今天学的这些东西吧,在我们的OS里,进程是资源分配的最小单位,线程是cpu调度的最小单位
程序和进程不是同一个概念
程序:一段静态的代码。
进程:程序的一次动态执行过程,它对应从代码加载、执行到执行完毕的一个完整过程。
线程是比进程更小的执行单位,它是在一个进程中独立的控制流,即程序内部的控制流。
线程有三种方法:
1、继承Thread
创建: A extends Thread
在A中实现run()
启动:利用继承自Thread 的strart() 方法
A a = new A();
a.start();
2、实现Runnable接口
创建: A implements Runnable
在A中实现run()
启动: 以A的对象为Thread的构造函数的参数创建Thread对象
并且利用它的start()方法调度启动线程
A a = new A();
Thread b = new Thread(a);
b.start();
3、利用Timer TimerTask
创建:创建TimerTask的子类,并实现run()方法得到时钟器任务类
MyTimerTask extends TimerTask{
public void run(){
}
}
启动:创建时钟器Timer对象
利用时钟器对象的schedule()方法启动线程任务
Timer timer = new Timer();
timer.schedule(new MyTimerTask(), ....,...);
特点:线程不能独立运行,必须依赖于进程,在进程中运行。
每个程序至少有一个线程称为主线程。
单线程:只有一条线程的进程称为单线程
多线程:有不止一个线程的进程称为多线程
今天主要介绍了线程的概念,视频因为老师一时疏忽没有保存住,我们不会的也只要指望着去看老师给的课件,或者去网上查,结合着文档的查询,总的来说今天讲的只是个概述,明天才讲深入的东西,好好预习下
今天留了两个作业,第一个是颜色渐变文字滚动的题目,我理解错了给做成颜色变化的了,其实颜色渐变也不难,也就是让它的值变化 颜色就变了,第二个题是豹子的奔跑,我以前用flash做过这个题,不过那个简单,其实学完线程以后这个也不难了,最后还做出