java线程有多线程和单线程,一般情况下多线程比单线程的运行要快,除非它是单核,而且无阻塞,这种情况下,单线程比多线程运行快。
进程包含线程:
每个进程都包含一个或多个线程。
使用多线程能让程序员高效率的编写程序来充分利用CPU。
新建-就绪-运行-(阻塞)-死亡
可以通过实现Runnable接口来创建线程 例子如下:
package lianxi;
public class lianxi9 {
public static void main(String[] args){
new NewThread1();
try{
for(int i=5; i>0; i--){
System.out.println("线程 "+i);
Thread.sleep(100);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("线程 ");
}
}
//创建一个新的线程
class NewThread1 implements Runnable {
Thread t;
NewThread1(){
//创建第二个新线程
t = new Thread(this,"Demo Thread");
System.out.println( t);
t.start();
}
public void run() {
try{
for(int i=5; i>0; i--){
System.out.println( "线程 "+i);
Thread.sleep(50);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(t);
}
}
还可以通过继承Thread来创建线程 例子如下:
package lianxi;
public class lianxi8 {
public static void main(String[]args){
MyThread t1 = new MyThread("线程一");
MyThread t2 = new MyThread("线程二");
Thread r1 = new Thread(t1);
Thread r2 = new Thread(t2);
t1.start();
t2.start();
}
}
class MyThread extends Thread{
public MyThread(String name){
super(name);
}
public void run(){
for(int i = 0; i<100;i++){
System.out.println(getName()+i);
}
}
}