💖💖💖欢迎来到我的博客,我是anmory💖💖💖
又和大家见面了
欢迎来到程序员必备知识系列
作为一个程序员你不能不掌握的知识
先来自我推荐一波
个人网站欢迎访问以及捐款
推荐阅读
如何低成本搭建个人网站
专栏:动画详解leetcode算法题
C语言知识
同步
假设现在你在打电话
你和你的朋友你一句我一句地抱怨着生活上的不顺
这时候我们就可以称这个过程是同步的
因为你必须等你的朋友说完你才可以继续说
你的朋友也必须等你说完才可以继续说
不是吵架的前提下
下面用一个GIF来展示什么是同步
在此过程中,朋友说话的时候你就只能干等着TA把话说完,你什么都不能干
这就是我们所说的同步
同步调用
在初学代码的过程中,我们遇到最多的就是同步调用
下面的代码展示了什么是同步调用
void FuncA()
{
FuncB();
}
在上面的代码中,当
FuncA
调用FuncB
的时候,FuncA
什么都不能做,只能等待FuncB
函数执行完成之后才能执行剩下的代码
异步
现在,你的老板喊你写一个程序,
你非常不愿意,但还是照做了
那么这个时候老板在干嘛呢?他不可能干等着你把程序写完吧
老板当然要去忙其他的失去数钱
那么这个时候,你在写程序,老板在数钱
我们就称这个过程为异步
因为你和老板干的事情是完全不相干的数钱和写程序确实没关系
异步允许两个函数同时执行
异步调用
我们不能让主线程一直闲着
必须让他在其他进程被调用的时候主线程也必须做点什么
此时我们就需要用到异步调用
下面的代码展示了什么是异步调用
read(file, buff);
// read函数立即返回
// 不会阻塞当前程序
在异步这种调用方式下,调用方不会被阻塞,函数调用完成后可以立即执行接下来的程序。
这时异步的重点就在于调用方接下来的程序执行可以和文件读取同时进行,从上图中我们也能看出这一点,这就是异步的高效之处。
总结
💖💖💖非常感谢各位的支持💖💖💖
我们共同进步
本系列持续更新,关注我,带你了解更多程序员必备知识
下期再见