Java 线程

线程创建的三种方法

-------------extends Thread 最简单的,但是限制最大----------
public class 线程1 extends Thread{

    @Override
    public void run() {
        // TODO Auto-generated method stub

        System.out.println("线程1运行啦");
    }

}
------------implements Runnable --------
public class 线程2 implements Runnable{

    @Override
    public void run() {
        // TODO Auto-generated method stub

        System.out.println("线程2运行啦");
    }

}
------------implements Callable<String> 运行完有返回值--------
public class 线程3 implements Callable<String>{

    @Override
    public String call() throws Exception {
        // TODO Auto-generated method stub

        System.out.println("线程3运行啦");

        return "宝强宝宝很生气";
    }

}
------------启动多线程--------
//继承运行
new 线程1().start();

//实现运行
new Thread(new 线程2()).start();

//有返回值的运行
FutureTask<String> futureTask = new FutureTask<>(new 线程3());

new Thread(futureTask).start();

//得到返回值
String string = futureTask.get();

System.out.println(string);

线程五态

setDaemon(true):设置为后台线程(没有前台线程将结束)
setPriority(Thread.MAX_PRIORITY):设置优先级
join():加入到主线程中,多个线程加入会有先后顺序
sleep(1000):线程睡觉,不释放锁
wait():线程睡觉,释放锁
notify():唤醒队列中的一个线程
notifyAll():唤醒队列中的所有线程
yield():绅士方法

五态图


同步(线程安全,避免多个线程争夺资源造成死锁)

http://blog.csdn.net/weixin_35928208/article/details/52278539

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值