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


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

Tags in this post...

面试题 相关文章推荐
main 函数执行以前,还会执行什么代码
Apr 17 面试题
struct和class的区别
Nov 20 面试题
上海奥佳笔试题面试题
Nov 16 面试题
编写strcpy函数
Jun 24 面试题
"引用"与多态的关系
Feb 01 面试题
主键(Primary Key)约束和唯一性(UNIQUE)约束的区别
May 29 面试题
接口可以包含哪些成员
Sep 30 面试题
linux比较文件内容的命令是什么
Mar 04 面试题
一套软件开发工程师笔试题
May 18 面试题
如何从一个文件档案的尾端新增记录
Dec 02 面试题
如何安装ruby on rails
Feb 09 面试题
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
社区(php&&mysql)六
2006/10/09 PHP
php setcookie函数的参数说明及其用法
2014/04/20 PHP
php中base64_decode与base64_encode加密解密函数实例
2014/11/24 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
php字符串操作常见问题小结
2016/10/11 PHP
PHP实现的数据对象映射模式详解
2019/03/20 PHP
php7性能提升的原因详解
2019/10/13 PHP
javascript 显示当前系统时间代码
2009/12/28 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
jQuery实现hover合成事件的方法
2015/08/06 Javascript
Bootstrap图片轮播组件Carousel使用方法详解
2016/10/20 Javascript
angularJS 发起$http.post和$http.get请求的实现方法
2017/05/18 Javascript
基于vue.js无缝滚动效果
2018/01/25 Javascript
Vue-路由导航菜单栏的高亮设置方法
2018/03/17 Javascript
webpack打包html里面img后src为“[object Module]”问题
2019/12/22 Javascript
微信分享invalid signature签名错误踩过的坑
2020/04/11 Javascript
vue vant中picker组件的使用
2020/11/03 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
Python实现的破解字符串找茬游戏算法示例
2017/09/25 Python
Python面向对象基础入门之设置对象属性
2018/12/11 Python
python实现数据分析与建模
2019/07/11 Python
如何安装2019Pycharm最新版本(详细教程)
2019/09/26 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
Django中ORM的基本使用教程
2020/12/22 Python
意大利时尚精品店:Nugnes 1920
2020/02/10 全球购物
两道JAVA笔试题
2016/09/14 面试题
硕士研究生自我鉴定
2013/11/08 职场文书
毕业生就业自荐信
2013/12/04 职场文书
学校后勤人员职责
2013/12/27 职场文书
临床医师专业个人自我评价
2014/01/08 职场文书
学年自我鉴定
2014/01/16 职场文书
购房委托书范本
2014/09/18 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
Python编程根据字典列表相同键的值进行合并
2021/10/05 Python
各种货币符号快捷输入
2022/02/17 杂记