我总是看到Silverlight中使用的关键字async,但想知道是否有人用虚拟角色解释它是什么以及何时使用它及其好处。如果你能解释,请大加赞赏。谢谢。什么是异步并等待,什么时候在windows开发中使用它们?
回答
看看this blog post,它给出了一个很好的介绍和解释什么是异步和等待。
如果你想真正了解它,看看Jon Skeet's series on async and await
第一个链接“这篇博文”非常清晰和有用。澄清了很多事情。 – 2015-07-29 00:27:28
虽然这可能会在理论上回答这个问题,[这将是更可取的](/ meta.stackoverflow.com/q/8259)在这里包括答案的基本部分,并提供参考链接。 – Makyen 2017-07-08 04:23:33
开始于my introductory article in MSDN magazine。
然后阅读the papers on the async CTP site。
如果您仍然有问题,请尝试询问the async forum。
虽然这可能在理论上回答这个问题,[这将是更可取的](/ meta.stackoverflow.com/q/8259)在这里包括答案的基本部分,并提供链接供参考。 – Makyen 2017-07-08 04:24:41
@Makyen:我鼓励你写一个完全相同的答案。那样我们都会从你的智慧中受益。 – 2017-07-10 04:25:16
我相信你比我更合格。我的评论意在更多地提醒您,这是多年来SO改变所影响的答案之一。由于仅仅是一个链接集合(其中之一已经死亡;在它死亡之前它在你添加它之后发生了显着变化),它从完全可以接受变成“不是答案”。事实上,一条链路已经死亡,这是一个很好的例子,说明为什么在这里包含必要条件是可取的。 – Makyen 2017-07-10 04:51:29
- 1. 为什么我在Windows上获取NotImplementedError异步并等待?
- 2. flink Windows,它们什么时候启动
- 3. 什么是BigInteger,我们什么时候可以使用它?
- 4. JS异步/等待 - 为什么等待需要异步?
- 5. 什么是SWC,什么时候/我们在Flash中使用SWC
- 6. 什么是JavaScript对象,它们什么时候有用?
- 7. intn_t什么时候使用它,什么时候不使用
- 8. EGL_KHR_IMAGE < - 它是什么,什么时候应该使用它
- 9. 什么是http标题,什么时候需要指定它们
- 10. 异步等待代码。为什么它不起作用?
- 11. 调用异步方法,然后等待它,有什么好处?
- 12. 什么是等待?
- 13. 什么是PostgreSQL函数,什么时候我必须使用它们?
- 14. 什么是C++中的“set”?他们什么时候有用?
- 15. 什么是SAPI,您什么时候使用它?
- 16. 什么是SELF JOIN,什么时候使用它?
- 17. 什么是HTML BB按钮?什么时候应该使用它?
- 18. 什么是模拟,什么时候应该使用它?
- 19. 什么是MvcHtmlString,我应该什么时候使用它?
- 20. 什么时候使用指针,何时不使用它们
- 21. 什么时候应该做同步或异步发送?
- 22. 什么时候闪避异常和何时处理它们
- 23. ServerSocket.close()。它什么时候抛出异常?
- 24. Android:我们什么时候使用getIntent()?
- 25. 什么是单身模式?为什么和什么时候应该使用它?
- 26. python sys.intern做什么,它应该在什么时候使用?
- 27. SqlCommand.Prepare()做什么以及它应该在什么时候使用?
- 28. 为什么在里面等待同步?
- 29. 在异步函数中,为什么我必须等待?
- 30. 为什么要在方法中间等待异步方法?
这来了很多与线程这是一个非常大的话题,但如果你只是想一个基本的实用一句话回答,异步是指两个事情发生在彼此独立的时间。例如,你有一个查询数据库的按钮。如果你不想让它异步,那么你的整个程序就会停下来等待它完成,然后再让你做其他任何事情。例如,如果您不希望发生这种情况,可以使其异步(通常使用其他线程),并仍保留对用户界面的控制权。 – CptSupermrkt 2012-01-18 06:46:04
@CptSupermrkt它提到async/await的一个要点是避免产生新的线程*。例如,参见http://blogs.msdn.com/b/ericlippert/archive/2010/10/29/asynchronous-programming-in-c-5-0-part-two-whence-await.aspx,其中部分地说:“尽可能地保留在当前线程上的异步方法的全部意义。” – phoog 2012-01-18 18:53:16
@phoog - 产卵线程与停留在正确线程上不一样。 – 2012-01-20 06:12:10