什么是同步编程、异步编程??

一个操作采用同步模式就是指当程序中的一个线程执行到这个操作时,这个线程就停滞在这里,直到这个操作执行完毕,线程才继续执行下一条语句。用异步模式,则程序中的一个线程执行到这... 一个操作采用同步模式就是指当程序中的一个线程执行到这个操作时,这个线程就停滞在这里,直到这个操作执行完毕,线程才继续执行下一条语句。
用异步模式,则程序中的一个线程执行到这个操作时,这个线程只是执行一些必要的初试化工作,启动这个操作后就继续执行后面的语句,不等待操作返回的结果。
展开
 我来答
四舍五不入6
高粉答主

2020-03-16 · 醉心答题,欢迎关注
知道答主
回答量:147
采纳率:100%
帮助的人:2.2万
展开全部

同步编程:传统的同步编程是一种请求响应模型,调用一个方法,等待其响应返回。就是 一个线程获得了一个任务,然后去执行这个任务, 当这个任务执行完毕后,才能执行接下来的另外一个任务。

异步编程:异步编程就是要重新考虑是否需要响应的问题,也就是缩小需要响应的地方。因为越快获得响应,就是越同步化,顺序化,事务化,性能差化,异步编程通常是通过fire and forget方式实现。

扩展资料:

在同步编程中,所有的操作都是顺序执行的,比如从socket中读取(请求),然后写入(回应)到socket中,每一个操作都是阻塞的。

异步编程的原则是,让进程处理多个并发执行的上下文来模拟并行处理方式 ,异步应用使用一个事件循环,当一个事件触发暂停或恢复执行上下文:

只有一个上下文处于活动状态,上下文之间进行轮替,代码中的显示指令告诉事件循环,哪里可以暂停执行,这时,进程将查找其他待处理的线程进行恢复,最终,进程将回到函数暂停的地方继续运行,从一个执行上下文移到另一个上下文称为切换。

参考资料来源:百度百科-异步编程

包布丁
2015-07-04 · TA获得超过1358个赞
知道小有建树答主
回答量:1435
采纳率:25%
帮助的人:1224万
展开全部

我们知道,在一般的程序语言中,如果没有特殊处理,代码都是以同步方式进行的。通俗讲就是“一个接一个”,每个操作都在上一个操作完成之后完成。

 

如果你写过窗体应用程序,可能会碰到这样一个情况:直接在窗体事件函数中跑IO操作、网络操作或耗CPU大的操作时,窗体会出现明显的卡顿现象。原因在于窗体的消息循环被耗时的操作停住了,不能响应用户。这就是同步编程的缺点,操作直接会有阻塞。

 

异步就能很好地解决这个问题。通常我们实现异步采用的方法是多线程。

显而易见,这样做的好处就在于操作之间不会互相堵塞。比如,你可以在窗体上放一个加载中的动画,而另一个线程做一些耗时的工作。但由于其模型的特殊性,编程时可能会有一定难度,初学者一下子可能不好掌握。当然,熟练之后,你就会发现异步编程的好处。

 

补充一些:

在C#中,普通的异步方法都以Async结尾,通常含有异步方法的对象中都会有响应的完成、进度改变和错误事件以供调用,只需绑定事件即可。

C# 5.0中引入了await和async两个关键字,它们使得异步变得跟简单。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qsc800528
2007-01-25 · TA获得超过2974个赞
知道大有可为答主
回答量:1383
采纳率:0%
帮助的人:1760万
展开全部
同步就是要等待方法的返回,异步就是方法执行过后立即返回,操作真正完成时会有事件发生
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yuanqingl
推荐于2017-10-03 · TA获得超过397个赞
知道小有建树答主
回答量:297
采纳率:0%
帮助的人:205万
展开全部
传统的同步编程是一种请求响应模型,调用一个方法,等待其响应返回.

异步编程就是要重新考虑是否需要响应的问题,也就是缩小需要响应的地方。因为越快获得响应,就是越同步化,顺序化,事务化,性能差化。

异步编程通常是通过fire and forget方式实现,发射事件后即忘记,做别的事情了,无需立即等待刚才发射的响应结果了。(发射事件的地方称为生产者,而将在另外一个地方响应事件的处理者称为消费者).异步编程是一种事件驱动编程,需要完全改变思路,将“请求响应”的思路转变到“事件驱动”思路上,是一种软件编程思维的转变.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
2925059
2015-05-19 · TA获得超过4136个赞
知道大有可为答主
回答量:1.1万
采纳率:51%
帮助的人:1737万
展开全部
你的问题是:编程同步通讯和编程上的异步通讯吧?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式