文件名称:CppAwait:C ++中的C#asyncawait。 旧版实现,请改用CppAsync!
文件大小:113KB
文件格式:ZIP
更新时间:2024-05-22 02:21:53
C++
注意 该库不再维护。 所有开发都已转移到 ,这是一种更有效,更灵活且不依赖Boost.Context的完整重新实现。 CppAwait CppAwait是一个C ++库,它允许以自然(顺序)形式编写异步代码。 它解决了异步API典型的代码流反转。 因此-您可以使用简单的条件,循环和异常处理程序来表达您的异步算法,而不是链接回调,而是处理状态和错误代码。 目标:使编写必须处理缓慢的网络和文件I / O的响应式应用程序变得更加容易。 这个怎么运作 CppAwait提供了一个类似于C#5中的await构造(请参见 )。 在到达等待表达式时,C#编译器会自动将方法的其余部分转换为任务继续。 在C ++中,可以通过协同程序(CppAwait在Boost.Context之上实现)来实现类似的效果。 调用await()将暂停协程,直到相关任务完成。 该程序可以在协程被暂停时*地执行其他工作。
【文件预览】:
CppAwait-master
----CMakeLists.txt(2KB)
----.gitignore(69B)
----README.md(6KB)
----Examples()
--------ex_iterator.cpp(1KB)
--------main.cpp(2KB)
--------CMakeLists.txt(981B)
--------ex_stockServer.cpp(3KB)
--------stdafx.h(420B)
--------ex_awaitThread.cpp(4KB)
--------Looper()
--------ex_comboDetector.cpp(3KB)
--------ex_fibonacci.cpp(2KB)
--------stdafx.cpp(19B)
--------ex_awaitChatServer.cpp(8KB)
--------ex_awaitBasics.cpp(4KB)
--------ex_awaitHttpClient.cpp(6KB)
--------ex_awaitFlickr.cpp(9KB)
--------ex_awaitChatClient.cpp(5KB)
--------ExUtil.h(1KB)
--------ex_stockClient.cpp(8KB)
----LICENSE(11KB)
----include()
--------CppAwait()
----PROJECTS(174B)
----.gitattributes(262B)
----TODO(105B)
----CppAwait()
--------CMakeLists.txt(585B)
--------Awaitable.cpp(10KB)
--------StringUtil.cpp(2KB)
--------stdafx.h(341B)
--------ConfigPrivate.h(617B)
--------SharedFlag.cpp(1KB)
--------stdafx.cpp(19B)
--------Log.cpp(1KB)
--------Coro.cpp(12KB)
--------AsioWrappers.cpp(6KB)
--------Scheduler.cpp(2KB)
----doc()
--------Doxyfile(80KB)
----CHANGELOG(5B)
----cmake_modules()
--------precompiled_header.cmake(2KB)
--------enable_max_warning_level.cmake(419B)