前提
程序里面的同步和异步和我们现实生活理解不太一样,一般我们对同步的理解是同时做很多事情,但程序中的同步是按照任务的顺序执行任务,前一个任务没有执行结束,下一个任务不会执行,要等待上一个任务执行结束。
理解
同步(Sync)
发出一个功能调用时,必须一件一件事做,等前一件做完了才能做下一件事。异步(Async)
当一个异步过程调用发出后,调用者在没有得到结果之前,就可以继续执行后续操作。
总结来说,同步和异步的区别:请求发出后,是否需要等待结果,才能继续执行其他操作。
优缺点
1、同步的执行效率会比较低,耗费时间,但有利于我们对流程进行控制,避免很多不可掌控的意外情况;
2、异步的执行效率高,节省时间,但是会占用更多的资源,也不利于我们对进程进行控制(多线程的控制还有并行是比较复杂的还是)
参考资料
同步与异步的区别_鑫仔9805的博客-CSDN博客_同步和异步的区别是什么//讲的很好