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


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

Tags in this post...

面试题 相关文章推荐
Order by的几种用法
Jun 16 面试题
VLAN和VPN有什么区别?分别实现在OSI的第几层?
Dec 23 面试题
什么是属性访问器
Oct 26 面试题
C#实现对任一张表的数据进行增,删,改,查要求,运用Webservice,体现出三层架构
Jul 11 面试题
linux面试题参考答案(6)
Jun 23 面试题
几个Shell Script面试题
Apr 18 面试题
一套比较完整的软件测试人员面试题
May 13 面试题
主要的Ajax框架都有什么
Nov 14 面试题
JAVA语言如何进行异常处理,关键字:throws,throw,try,catch,finally分别代表什么意义?在try块中可以抛出异常吗?
Jul 02 面试题
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
Mar 12 面试题
java程序员面试交流
Nov 29 面试题
顺丰快递Java软件工程师面试题
Jul 31 面试题
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入门之常量简介和系统常量
2014/05/12 PHP
PHP编译安装时常见错误解决办法
2015/05/28 PHP
10个php函数实用却不常见
2015/10/13 PHP
thinkPHP导出csv文件及用表格输出excel的方法
2015/12/30 PHP
阿里对象存储OSS在laravel框架中的使用方法
2019/10/13 PHP
图片自动更新(说明)
2006/10/02 Javascript
JS实现标签页效果(配合css)
2013/04/03 Javascript
js获取form的方法
2015/05/06 Javascript
微信企业号开发之微信考勤百度地图定位
2015/09/11 Javascript
jsonp跨域请求数据实现手机号码查询实例分析
2015/12/12 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
一个极为简单的requirejs实现方法
2016/10/20 Javascript
使用requirejs模块化开发多页面一个入口js的使用方式
2017/06/14 Javascript
JS实现加载时锁定HTML页面元素的方法
2017/06/24 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
[47:45]DOTA2-DPC中国联赛 正赛 Phoenix vs Dragon BO3 第一场 2月26日
2021/03/11 DOTA
Python 调用DLL操作抄表机
2009/01/12 Python
Python线程中对join方法的运用的教程
2015/04/09 Python
Python3爬虫学习之MySQL数据库存储爬取的信息详解
2018/12/12 Python
Python Pandas 箱线图的实现
2019/07/23 Python
基于python分析你的上网行为 看看你平时上网都在干嘛
2019/08/13 Python
The Hut德国站点:时装、家居用品、美容等
2016/09/23 全球购物
西班牙在线宠物商店:zooplus.es
2017/02/24 全球购物
马来西亚时装购物网站:ZALORA马来西亚
2017/03/14 全球购物
常见的软件开发流程有哪些
2015/11/14 面试题
文科毕业生自荐书范文
2014/04/17 职场文书
产品包装策划方案
2014/05/18 职场文书
城管执法人员纪律作风整顿思想汇报
2014/09/13 职场文书
2014年村委会工作总结
2014/11/24 职场文书
2015年置业顾问工作总结
2015/04/07 职场文书
小学数学继续教育研修日志
2015/11/13 职场文书
2019消防宣传标语!
2019/07/10 职场文书
青年人初次创业的“五不要”
2019/08/23 职场文书
导游词之泰山玉皇顶
2019/12/23 职场文书