A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© kongyan4696 中级黑马   /  2014-6-3 08:40  /  1905 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

什么是多线程:多个能独立同时运行的代码,

方法:Thread,Runnable


同步:Synchronized代码块,Synchronized函数 同步共享数据。
前提:有2个以上的线程,同一把锁
好处:解决了安全问题,坏处:消耗了资源

1.哪些代码需要多线程执行
2.明确共享数据
3.多线程代码中哪些是操作共享数据的。

Synchronized函数要注意要将操作共享数据的代码独立出来在Synchronized

Synchronized函数      用的锁匙this
Synchronized静态函数  用的锁匙class

进程间的通讯:操作同一共享数据,但操作类型不一样。

wait 释放锁 sleep 不释放锁  notify唤醒wait
wait notify 只能由持有锁的对象来调用

jdk1.5中使用了 Lock类  Condition对象 来替换Synchronized 和 object

守护线程:即后台线程,当前台线程都结束后自动结束

join()  在哪个线程中加入的,那个线程就跪,当执行完后才继续

1 个回复

倒序浏览
什么是多线程:多个能独立同时运行的代码,

方法:Thread,Runnable


同步:Synchronized代码块,Synchronized函数 同步共享数据。
前提:有2个以上的线程,同一把锁
好处:解决了安全问题,坏处:消耗了资源

1.哪些代码需要多线程执行
2.明确共享数据
3.多线程代码中哪些是操作共享数据的。

Synchronized函数要注意要将操作共享数据的代码独立出来在Synchronized

Synchronized函数      用的锁匙this
Synchronized静态函数  用的锁匙class

进程间的通讯:操作同一共享数据,但操作类型不一样。

wait 释放锁 sleep 不释放锁  notify唤醒wait
wait notify 只能由持有锁的对象来调用

jdk1.5中使用了 Lock类  Condition对象 来替换Synchronized 和 object

守护线程:即后台线程,当前台线程都结束后自动结束

join()  在哪个线程中加入的,那个线程就跪,当执行完后才继续
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马