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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李菁 中级黑马   /  2012-7-25 22:12  /  1425 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我想知道,在一个对象上两个线程可以调用两个不同的同步实例吗?
求指点

4 个回复

倒序浏览
不能,因为一个对象已经同步了实例方法,线程获取了对象的对象锁,所以只有执行完该方法释放对象锁后才能执行其它的同步方法。
回复 使用道具 举报
一个对象的两个线程,他们run函数中的代码块一模一样啊,怎么调用两个不同的同步实例呢?

我认为不行·
回复 使用道具 举报
线程:就是进程中一个执行单元或执行情景或执行路径负责进程中程序执行的控制单元 。
什么是同时执行呢?其实都是cpu在瞬间做着快速切换完成的。
cpu的切换随机的,按照时间片的方式来完成。
启动线程就是为了执行任务,当任务有多个需要同时执行时,就需要多个线程。
所以所谓的同步不是同时执行
回复 使用道具 举报
不能,因为你给一个对象加了同步锁,只有执行完该方法释放锁后另一个线程再进来执行并获得同步锁。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马