Java线程安全和同步到底是肿么一回事

已举报 回答 关注
Java线程安全和同步到底是肿么一回事
问在线客服
扫码问在线客服
  • 回答数

    10

  • 浏览数

    1,090

10个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
1、java中线程同步了也就满足安全性。

2、web工程中每一个浏览器发出的http请求到达服务器的时候,服务器都会建立一个新的线程来处理请求,一般如果写的action中很少会有静态的变量。
a。如果没有静态变量(静态变量都是所有action中唯一的,这些变量属于类,而不是属于某一个实例,也就是说静态变量是实例间共享的),那就不用关心线程安全的问题。
b。如果有静态变量的话,就需要关心线程安全问题了。假设你的类中的方法会对静态变量进行操作。还有一种情况是你的类方法中如果对数据库进行操作的话为了保证操作的原子性则需要在方法上加上关键字synchronized 关键字就可以了。
取消 评论
首先说明一下什么是同步和异步。
java同步方法简单理解就是多个任务执行同一个方法按顺序执行既等待第一次执行完成在执行下一次。
异步方法则是不需等待既不管第一次方法是否执行完成都会在此执行
同步方法所解决的问题就是比如订票系统每个座位就一张票如果用异步方法就有可能导致同一张票被多人购买,这也是所谓的数据脏读
而线程安全其实也是这个意思比如有一个list 需要消费list中的数据如果使用非线程安全方法也是很容易导致多个线程拿到相同的数据导致脏读
取消 评论
接触Java的集合框架的时候,总是免不了听到线程安全、同步这两个概念,以前也没有仔细去了解过是什么意思,刚才了解了一下,感觉就是一个意思,线程安全依靠的就是同步机制。
线程安全就是说多线程访问同一代码,不会产生不确定的结果。编写线程安全的代码是低依靠线程同步。

建议你再好好看看API。
取消 评论
你不贴代码,别人怎么知道你是怎么写的呢
取消 评论
面试的话 你就这样告诉他
线程的同步意味安全 譬如你取钱 你的执行语和我用的是相同对象 那你要在卡上扣除的钱数扣在我卡上了 怎么办

至于异步 是JAVA的闪亮点 设想下你搜索时 并没有提交 只打上关键字 就出现了很多提示 ,另外 异步在 体育节目方面的应用 在网上 你可以宣称 你的产品 可以让顾客看到赛场的比赛时钟 这就是用异步实现的
取消 评论
synchronized关键字修饰同步方法 java中有一些线程不安全的类用synchronized就边成现成安全的了
取消 评论
进入临界区需要同步~~互斥忘记了 自己搜搜吧
取消 评论
很有可你的硬件或声卡驱动太老了,或是你的系统硬件对播放系统不能很好 支持,更新硬件或换新的支持的声卡驱动试试
取消 评论
加载全部10个答案 加载中...
ZOL问答 > Java线程安全和同步到底是肿么一回事

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

扫码参与新品0元试用
晒单、顶楼豪礼等你拿

扫一扫,关注我们
提示

确定要取消此次报名,退出该活动?