关于Thread类的简单使用

线程:
线程也被称为轻量级进程,进程和线程都提供一个执行环境,但创建一个新的线程比创建一个新的进程资源要少得多

线程存在进程里,也就是说一个进程至少包括一个线程

线程共享进程的资源,包括内存和打开的文件,所以这使得通信可能会有问题

多线程执行是java平台的一个基本特征

每个应用程序至少有一个线程,但是必需有一个主线程,这个主线程是用来创建额外的线程

 

这是一个例子:

testThread类:

package com.d7.util;

public class testThread{

    public static void main(String[] args) {
        //创建线程有两种方法
        //1.实现Runnable接口
        //2.继承Thread类
        Thread thread=new Thread(new myWork());
        //启动一个线程
        thread.start();
        Thread thread2=new Thread(new myWork());
        thread2.start();
        
        Thread thread1=new forClass();
        thread1.start();
        //终止一个进程会触发InterruptedException异常,所以在catch里添加return即可终止
        thread1.interrupt();
    }

}

myWork类:

package com.d7.util;

//实现Runnable接口
public class myWork implements Runnable {

    @Override
    public void run() {
        // TODO Auto-generated method stub
        System.out.println("我是一个线程");
    }

}

forClass类:

package com.d7.util;

//继承Thread类
public class forClass extends Thread{

    @Override
    public void run() {
        String [] arrstr= {
                "Hello",
                "2017",
                "bye",
        };
        for(int i=0;i<arrstr.length;i++) {
            System.out.println(arrstr[i]);
            //这是判断这个静态值是否为真,为真就说明外部终止了这个线程,里面写return就终止了这个线程
            //下面还有一种方法如果要用二选一
            /*if(this.isInterrupted()) {
                System.out.println("if终止");
                return;
            }*/
            try {
                Thread.sleep(4000);
            } catch (InterruptedException e) {
                //只要外部终止了就会触发这个异常,所以加return就不会往下执行
                System.out.println("终止");
                return;
            }
        }
    }

}

posted @ 2017-08-14 17:40  Brl  阅读(339)  评论(0编辑  收藏  举报