【Java面试题】25 同步和异步有何异同,在什么情况下分别使用他们?举例说明。
2024-10-18 08:02:49
如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读的数据可能已经被另一个线程写过了,那么这些数据就是共享数据,必须进行同步存取。
当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序等待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。
Java中交互方式分为同步和异步两种:
同步交互:指发送一个请求,需要等待返回,然后才能够发送下一个请求,有个等待过程;
异步交互:指发送一个请求,不需要等待返回,随时可以再发送下一个请求,即不需要等待。
区别:一个需要等待,一个不需要等待,在部分情况下,我们的项目开发中都会优先选择不需要等待的异步交互方式。
哪些情况建议使用同步交互呢?比如银行的转账系统,对数据库的保存操作等等,都会使用同步交互操作,其余情况都优先使用异步交互
最新文章
- [Spring常见问题]java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
- 博客搬家。新博客地址 http://fangjian0423.github.io/
- [QGLViewer]First Demo
- 洛谷P1474 货币系统 Money Systems
- android屏幕基础知识
- <; java.util >;-- Set接口
- Is it possible to change the iPhone device name programmatically?
- openURL的使用方法
- In-System Debugger for 8051 Devices(ISD 8051单片机在线调试器)
- poj3984迷宫问题
- 你好 JSONP !!!!
- 美团2017年CodeM大赛-初赛B轮-黑白树
- pageHelper多个sql分页
- cmd返回上一级和根目录
- poj 3320(尺取法)
- python 全栈开发,Day120(路由系统, 实例化Flask的参数, 蓝图(BluePrint), before_request after_request)
- C#多线程和线程池[转]
- HTML ajax 上传文件限制文件的类型和文件大小
- C# window Service实现调用有UI的应用程序(关于win xp以后的window系统)
- 详细说明php的4中开源框架(TP,CI,Laravel,Yii)
热门文章
- Spring的三种注入方式(Setter、构造函数和自动注入)
- [面试题] Find next higher number with same digits
- 用Visual Studio Code写Node和调试代码
- iOS网络_优化请求性能
- laravel 代码维护, 使用php artisan使用应用程序处于维护状态
- 后台js返回验证登陆绕过
- Pro mvvm读书笔记mvvm中的VM
- 【Unity笔记】获得鼠标点击屏幕的位置,并转成世界坐标
- Qt5 can&#39;t find -LGL
- [uart]UART中的硬件流控RTS与CTS