小白了解多线程-面试题

1.当一个线程进入一个对象的一个synchronized方法后,其他线程是否可以进入此对象的其他方法?

答:可以,其他线程可以访问此对象的其他非同步方法,同步方法不能进入

2.sleep()和wait()的区别 ?

答:sleep是thread 的方法 可以指定该线程暂停时间让其他线程先跑但是监控状态依然保持到时会自动恢复,调用sleep方法不会释放对象锁

wait是object类的方法 可以让此线程放弃对象锁,进入等待锁定池,只有发出notify方法后才会进入对象锁定池获得对象锁进入运行

3.notify 和 notifyAll有什么区别

notify :指由jvm唤醒一个等待状态的线程,不按照优先级

notifyAll: 指唤醒所有等待状态的线程,但是并不是给所有线程对象锁而是让他们竞争

4.多线程有几种实现方法,都是什么?同步有几种实现方法?都是什么?

多线程有俩种实现方法,分别是继承thread类与实现runnable接口

同步的实现方法有俩种分别是synchronized的  wait 和notify
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值