c语言执行命令行是异步还是同步,await函数

作者头像
王梦
回答于 2023-04-03 17:05:08 阅读 692
c语言执行命令行是异步还是同步,await函数

c语言执行命令行是异步还是同步

1、同步:就是串行执行(按顺序,一个等一个),因为它就是函数的调用原理,栈机制的先进后出决定,速度慢,但是节约资源。

3、异步:就是并行执行(没有顺序,同时做),它采用了开启多线程的方式实现同时做多件事情,速度快,但是会加大资源的开销;垍頭條萊

4、二者应该根据应用场合来使用。

协程和异步有什么区别

1、协程是与例程相对而言的。

2、熟悉C/C++语言的人都知道,一个例程也就是一个函数。

3、当我们调用一个函数时,执行流程进入函数;当函数执行完成后,执行流程返回给上层函数或例程。

4、期间,每个函数执行共享一个线程栈;函数返回后栈顶的内容自动回收。

5、这就是例程的特点,也是现代操作系统都支持这种例程方式。

6、异步IO程序中,有很大一块代码是处理异步回调的,也就是数据读取或写入由系统执行,当任务完成后,系统会执行用户的回调。

7、如果只是很少使用这种回调,那么程序并不会因为异步而复杂多少,但要是程序中异步回调大量存在,那么此时我们会发现,原本简单的程序可能因为回调而变得支离破碎,原本一个简单的循环,

await函数

1、await用来声明程序挂起。

3、比如异步程序执行到某一步时需要等待的时间很长,就将此挂起,去执行其他的异步程序。

5、await 后面只能跟异步程序或有__await__属性的对象,因为异步程序与一般程序不同。

7、假设有两个异步函数async a,async b,a中的某一步有await,当程序碰到关键字await b()后,异步程序挂起后去执行另一个异步b程序,就是从函数内部跳出去执行其他函数,当挂起条件消失后,不管b是否执行完,要马上从b程序中跳出来,回到原程序执行原来的操作。

9、如果await后面跟的b函数不是异步函数,那么操作就只能等b执行完再返回,无法在b执行的过程中返回。

11、如果要在b执行完才返回,也就不需要用await关键字了,直接调用b函数就行。

声明:图文来源于互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系网站客服,一经查实,本站将立刻删除。

最新推荐