解释同步编程(Synchronous)与异步编程(Asynchronous)的区别。
Explain the difference between synchronous and asynchronous programming.
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: programming-model
标签: synchronous, asynchronous, non-blocking, parallel
参考答案摘要
TL;DR 同步是阻塞且按顺序执行;异步是非阻塞,可并行处理多个任务,一个任务的执行不必等待另一个完成。 在同步编程中,程序执行是顺序且阻塞的。也就是说代码一行接一行执行,必须等待当前操作完成后才能继续下一个操作。 而异步编程是一种非阻塞、并行的执行模型。多个任务可以同时运行,一个任务的执行不依赖另一个任务完成。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。