java基础(四)------多线程基础

1.线程类的声明

线程类声明有两种方式

  1. 继承Thread类,重写该类的run()方法
  2. 实现Runnable接口,重写该接口的run()方法,此类作为Thread类的参数开启线程

线程的开启

  • 线程的开启,是Thread类调用start()方法开启,然后系统会在子线程里调用run()方法运行。

2.线程的同步

线程的同步解决的是对共享资源的修改的限制。
使用关键字synchronized实现线程的同步和互斥,但synchronized修饰的部分会消耗大量资源,所以尽量使得同步的区域小一点。

  • ssynchronized同步代码块,锁是任意对象
synchronized (this)      //  (1)
操作共享数据部分
{
  • ynchronized修饰函数,表示同步函数,锁是this
Public synchronized void methodAAA()
{
    同步部分
}

3.常用函数

  1. sleep(int millsecond),使当前线程睡眠,参数是毫秒,由Thread调用
  2. currentThread(),返回当前使用CPU资源的线程名,Thread调用。
  3. wait(),等待,可由任意对象调用,必须在同步代码中调用
  4. notify(),唤醒,具体唤醒对象由系统决定
  5. notifyAll(),唤醒所有线程池中可以被唤醒的线程
  6. join(),使调用该方法的线程在此之前执行完毕,也就是等待该方法的线程执行完毕后再往下继续执行。注意该方法也需要捕捉异常。
  7. yield(),让出执行权,让同级的线程获得运行资格

注:身体不舒服,写的很粗糙。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值