同步:提交请求--->等待服务器处理--->服务器处理完毕返回的这个期间客户端浏览器不能干别的事

异步:请求通过事件触发--->服务器处理(这时客户端浏览器还可以做其他的事情)---->处理完毕

通俗易懂的理解:

同步就是按顺序执行,执行完一个在执行下一个,需要等待、协调运行。

异步就是彼此独立,在等待某事件的过程中继续做自己的事,不需要等待这一事件完成后再工作,例如:同步就是:你喊我去吃饭,如果我听到了,我就和你一起去吃饭,如果我没有听到,那你就一直不停的喊,直到我告诉你我听到了,我们才一起去吃饭;而异步就是你喊我,然后自己去吃饭了,我得到消息后可能立即去吃饭,也可能下班后才去吃饭。

注意:线程就是实现异步的一个方式。异步和多线程并不是一个同等的关系,异步是最终目的,而多线程只是我们实现异步的一种手段。

同步和异步的区别(优点和缺点):

同步优点:可以避免出现死锁,脏读数据(脏读:t1读取了t2更新但未提交的事务,若t2回滚,则t1读取到的数据就无效)的发生。一般共享某一资源的时候用同步。

同步缺点:需要等待资源访问结束,浪费时间效率低。

异步优点:可以提高效率

异步缺点:安全性低

同步可以通过加锁synchronized关键字来实现

Java中同步和异步的区别是什么?优点缺点以及概念理解相关推荐

  1. java同步和异步的区别_java中同步与异步的区别是什么?表现在哪里?

    上次已经为大家介绍过java多线程的同步与异步,为大家详细分析了这两者的基本概念,今天再来详细的解析一下这两者之间的区别,并且它们的表现也是不同的,一起来了解一下吧. 首先,他们最大的区别是,同步需要 ...

  2. 同步和异步的区别是什么?

    同步和异步的区别是什么? 场景题:12345以什么顺序打印出来?定时器的应用 知识点: 单线程和异步 应用场景 Callback hell(回调地狱) 和 Promise(解决回调地狱的问题) 单线程 ...

  3. java中同步和异步简介及应用场景

    转自: java中同步和异步简介及应用场景 同步: 同步指两个或两个以上随时间变化的量在变化过程中保持一定的相对关系. 本意是指某人或某事同时进行:同时产生,比如音画同步.动作同步等. 同步,指对在一 ...

  4. 杂谈——Java中同步与异步有什么区别

    大家在使用手机的时候,比如小米手机,自带云空间,可以将数据同步到云空间上:很多文档app也有同步的功能.而我们牛气冲冲的Java自然也有同步与异步,不过Java中的同步与异步似乎与我们平常认知中的同步 ...

  5. Java中 == 和 equals 的区别是什么?

    面试题汇总 Java中 == 和 equals 的区别是什么? 什么是==? == 等于比较运算符,如果进行比较的两个操作数都是数值类型,即使他们的数据类型不相同,只要他们的值相等,也都将返回true ...

  6. java中为什么同步_如何在Java中同步工作

    如何在Java中同步工作 首先, 这是一个示例 : public class Deadlock { static class Friend { private final String name; p ...

  7. JS中同步和异步的区别

    JS中同步和异步的区别 js是一门单线程语言,所谓"单线程",就是指一次只能完成一件任务.如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务,以此类推.如果一个任务耗 ...

  8. java同步和异步的区别_java中同步与异步区别是什么

    一.同步与异步概念:(推荐:java视频教程) 1.同步:所有的操作都做完,才返回给用户.这样用户在线等待的时间太长,给用户一种卡死了的感觉(就是系统迁移中,点击了迁移,界面就不动了,但是程序还在执行 ...

  9. JS中同步与异步的理解

    你应该知道,javascript语言是一门"单线程"的语言,不像java语言,类继承Thread再来个thread.start就可以开辟一个线程,所以,javascript就像一条 ...

最新文章

  1. 第四次作业,孙保平034
  2. 【转载】ABAP中数据和对象的动态创建和调用
  3. C++(STL):21---deque之源码剖析
  4. Ado.Net 实体类、数据连接类、数据访问类
  5. java容器类添加元素失败失败_java容器 Set
  6. wordpress 如何移除管理后台仪表盘小工具
  7. linux与Windows查看路由
  8. centos服务器安装python3,CentOS7 服务器上如何安装python3
  9. 计算机服务重置,怎么重置电脑网络设置
  10. 可实现ffmpeg转码的cuda显卡
  11. 于歆杰pdf 电路原理_电路原理于歆杰答案pdf
  12. [BZOJ2959] 长跑
  13. 软件开发过程包括哪几个阶段?
  14. R语言数据的排序、转换、汇总
  15. 文件下载的三种方式,前端和后端实现
  16. 东南大学和华中科技大学计算机哪个好,中南大学、东南大学、华中科技大学,这三所学校到底哪个好?...
  17. Python 实现海报图片拼接
  18. 解决uniapp小程序打包体积超过2M,提示包体积超过2M,“main packagexxx”,不给上传和预览的解决办法,绝对有效
  19. 如何查找和安装 WORDPRESS 插件?
  20. 网络请求框架:Okhttp:Call对象实现请求源码解析【四】

热门文章

  1. 5年测试经验华为社招:半月3次面试,成功拿到Offer
  2. CERT和CWE之间有什么联系?
  3. 软件测试该如何自学?
  4. 关于谷歌chrome浏览器以及360极速浏览器摄像头无法使用(摄像头权限)问题。
  5. 求secx和cscx的不定积分
  6. Knoppix 简介
  7. 万邦京东获得JD商品详情原数据 API
  8. 微信小程序开发入门指南二
  9. Vue中实现拖拽效果
  10. window下eslipse搭建django遇到的问题以及解决方法积累(持续更新)