Skip to Main Content
Hack 与HHVM 权威指南
book

Hack 与HHVM 权威指南

by Owen Yamauchi
March 2017
Beginner content levelBeginner
247 pages
3h 55m
Chinese
China Machine Press
Content preview from Hack 与HHVM 权威指南
124
6
await
HH\Asio\v(
array
(fetch_from_web(), fetch_from_db(1234)));
return
$web . $db;
}
我们将在本章的余下篇幅里面对这里所发生的事情详细阐述,但是现在你对异步代码有
较高层次的认识即可。
6.2
异步细节
在我们正式开始之前,如果你将要频繁使用异步,我们极力推荐你安装
asio-utilities
,这
是一个异步的助手函数库。我们将在接下来的学习中对这个库的内容进行探讨。当然,
没有这个库,你也可以使用异步,但是它可以使得代码更加简洁。
下载和安装这个类库的推荐途径是使用
Composer
https://getcomposer.org/
),这是一
个对
PHP
Hack
进行包管理的工具。在你的
composer.json
文件中添加如下内容即可:
"require": {
"hhvm/asio-utilities": "
~
1.0"
}
6.2.1
等待句柄
等待句柄(
wait handle
)的概念是异步代码工作的核心内容。等待句柄是一个对象,它
代表了一个可能的异步操作,而这项操作可能完成了,也可能没有完成。如果它完成了,
你可以从等待句柄中获得一个结果。如果没有,你可以等待这个句柄。
等待句柄是用通用的接口
Awaitable
表示的。这里有很多实现了这个接口的类,但这些
都是实现的细节,你并不应该依赖它们。
这里有两种非常重要的等待句柄:
一种代表了异步函数。如果想获得其中一个,只需简单地调用一个异步函数:
async function ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Reinventing the Organization for GenAI and LLMs

Reinventing the Organization for GenAI and LLMs

Ethan Mollick

Publisher Resources

ISBN: 9787111554844