Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?


Posted in 面试题 onAugust 04, 2015
有两种实现方法,分别是继承Thread类与实现Runnable接口
用synchronized关键字修饰同步方法
反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。结果很难检查出真正的问题所在。suspend()方法容易发生死锁。调用suspend()的时候,目标线程会停下来,但却仍然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源,除非被”挂起”的线程恢复运行。对任何线程来说,如果它们想恢复目标线程,同时又试图使用任何一个锁定的资源,就会造成死锁。所以不应该使用suspend(),而应在自己的Thread类中置入一个标志,指出线程应该活动还是挂起。若标志指出线程应该挂起,便用wait()命其进入等待状态。若标志指出线程应当恢复,则用一个notify()重新启动线程。

Tags in this post...

面试题 相关文章推荐
PHP面试题附答案
Nov 28 面试题
C语言面试题
Oct 30 面试题
计算s=f(f(-1.4))的值
May 06 面试题
初级软件工程师面试题 Junior Software Engineer Interview
Feb 15 面试题
下列程序在32位linux或unix中的结果是什么
Jan 26 面试题
Linux文件系统类型
Feb 15 面试题
亿企通软件测试面试题
Apr 10 面试题
什么是设计模式
Jun 17 面试题
GWT的应用有哪两种部署模式
Dec 21 面试题
Java文件和目录(IO)操作
Aug 26 面试题
WebSphere面试题:在WebSphere里面如何部署一个应用
Aug 02 面试题
什么是servlet链?
Jul 13 面试题
error和exception有什么区别
Oct 02 #面试题
说说你所熟悉或听说过的j2ee中的几种常用模式?及对设计模式的一些看法
May 24 #面试题
HashMap和Hashtable的区别
May 18 #面试题
Weblogc domain问题
Jan 27 #面试题
Collection和Collections的区别
May 02 #面试题
如何将整数int转换成字串String
Mar 21 #面试题
如何将字串String转换成整数int
Feb 21 #面试题
You might like
收音机频率指针指示不准确和灵敏度低问题
2021/03/02 无线电
php使用正则验证中文
2016/04/06 PHP
PHP实现的通过参数生成MYSQL语句类完整实例
2016/04/11 PHP
php+ajax简单实现全选删除的方法
2016/12/06 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
JavaScript中继承的一些示例方法与属性参考
2010/08/07 Javascript
nodejs教程 安装express及配置app.js文件的详细步骤
2013/05/11 NodeJs
javascript中为某个元素指定事件的三种方式
2014/08/07 Javascript
javascript实现状态栏文字首尾相接循环滚动的方法
2015/07/22 Javascript
jQuery实现form表单元素序列化为json对象的方法
2015/12/09 Javascript
JS中mouseover和mouseout多次触发问题如何解决
2016/06/06 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
微信小程序 网络API发起请求详解
2016/11/09 Javascript
JavaScript中使用webuploader实现上传视频功能(demo)
2017/04/10 Javascript
Three.js入门之hello world以及如何绘制线
2017/09/25 Javascript
jQuery实现的粘性滚动导航栏效果实例【附源码下载】
2017/10/19 jQuery
bootstrap table支持高度百分比的实例代码
2018/02/28 Javascript
小程序登录态管理的方法示例
2018/11/13 Javascript
微信小程序开发实现的IP地址查询功能示例
2019/03/28 Javascript
javaScript代码飘红报错看不懂?读完这篇文章再试试
2020/08/19 Javascript
[08:53]DOTA2每周TOP10 精彩击杀集锦vol.9
2014/06/26 DOTA
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
用TensorFlow实现lasso回归和岭回归算法的示例
2018/05/02 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
python实现QQ邮箱/163邮箱的邮件发送
2019/01/22 Python
python pygame实现挡板弹球游戏
2019/11/25 Python
pytorch实现mnist数据集的图像可视化及保存
2020/01/14 Python
python map比for循环快在哪
2020/09/21 Python
Opencv+Python识别PCB板图片的步骤
2021/01/07 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
婚纱摄影师求职信
2014/03/07 职场文书
党员创先争优承诺书
2014/03/26 职场文书
森马旗舰店双十一营销方案
2014/09/29 职场文书
国家助学金受助感言
2015/08/01 职场文书
Go语言基础知识点介绍
2021/07/04 Golang