public static void main(String[] args) {
Thread tr1=new TestThread(); //实例化线程
tr1.start(); //启动线程
Thread tr2=new Thread(new TestRunable()); //实例化线程并传入线程体tr2.start(); //启动线程
Thread tr3=new Thread(new TestThreadpool()); //实例化线程并传入线程体ExecutorService tp=Executors.newFixedThreadPool(10); //创建具有10个线程的线程池
tp.execute(tr3);//启动线程
}
}
使用Thread创建线并启动线程
public void run(){
for(int i=0;i<10;i++){
System.out.println("Thread>"+Thread.currentThread().getName()+":"+i);
}
}
}
使用Runnable创建并启动线程
public void run(){
for(int j=0;j<10;j++){
System.out.println("Runnable>"+Thread.currentThread().getName()+":"+j);
}
}
}
使用ExecutorService实现线程池
public void run(){
for(int k=0;k<10;k++){
System.out.println("ThreadPool>"+Thread.currentThread().getName()+":"+k);
}
}
}
匿名内部类方式:
public class test32 {
public static void main(String[] args) {
使用Thread创建线并启动线程
new Thread(){
public void run(){
for(int x=0;x<10;x++){
System.out.println("Thread>"+Thread.currentThread().getName()+":"+x);
}
}
}.start();
使用Runnable创建并启动线程
new Thread(new Runnable(){
public void run(){
for(int y=0;y<10;y++){
System.out.println("Runnable>"+Thread.currentThread().getName()+":"+y);
}
}
}).start();
使用ExecutorService实现线程池
Executors.newFixedThreadPool(10).execute(new Runnable() {
@Override
public void run() {
for(int z=0;z<10;z++){
System.out.println("ThreadPool>"+Thread.currentThread().getName()+":"+z);
}
}
});
}
}