进程是指程序的一次执行过程。操作系统负责为进程的调度,资源分配等。在线视频播放器程序在运行时操作就负责维护这个程序的进程。
线程是程序执行时具有一个完整生命周期的子任务,一个进程至少有一个线程,该线程称为主线程。比如在线视频播放器就是一个多线程的进程,一个子任务是视频数据流缓冲,另外一个线程负责视频播放,线程共享进程的资源,参与CPU资源竞争。线程有新建,阻塞,运行,销毁完整的生命周期。
Java平台特性之一就是对多线程的支持,Java API提供了java.lang.Thread类让开发者轻松开发多线程的系统。
Thread类提供了run()接口方法作为线程任务,通常我们直接继承Thread类重写run方法或通过外部的插件接口Runnable实现类来完成线程任务的定义。
Thread类的start()方法可以让Thread对象生成进程的一个线程,并开始了一个线程的完整的生命周期。
下面通过继承Thread类来实现多个线程创建和执行。
classMyThreadextendsThread{
privateStringstr;
privateintcount;
publicMyThread(Stringstr,intcount){
this.str=str;
this.count=count;
}
@Override
publicvoidrun() {
for(inti=0;i
System.out.println(str);
}
}
publicclassDemo1 {
publicstaticvoidmain(String[]args) {
Threadt1=newMyThread("AAAAAAA",100);
Threadt2=newMyThread("BBBBBBB",100);
t1.start();
t2.start();
}
}
运行程序,结果如下图所示: