首页 > 代码库 > Java高级复习㈠ 多线程
Java高级复习㈠ 多线程
1.线程
也称为轻量级进程,每个线程有自己的堆栈、程序计数器、局部变量。与进程相比,进程中的线程之间隔离程度要小
2.Java实现
①implements Runnable
②extends Thread
一般推荐①
3.sleep()、yield()
sleep()方法对当前线程操作,指定以毫秒为单位的线程最小休眠时间,除非线程因中断提早恢复执行,否则不会在这段时间前恢复执行。线程可调用另一线程的interrupt()方法,向暂停的线程发出InterruptedException,变相唤醒暂停线程。
yield()方法使同优先级的线程获得执行机会,如果没有同优先级的可运行线程,yield()什么都不做
sleep()会给低优先级线程运行机会,yield()只给同优先级线程执行机会
4.join()
当前线程与该线程合并
5.临界资源问题
①互斥锁 synchronized
②死锁
③wait()、notify()
wait和sleep区别:wait会释放对象锁,sleep不会
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。