danog/async-construct

为 AMPHP 提供异步类构造函数和唤醒函数。

0.1.0 2020-07-31 13:09 UTC

This package is auto-updated.

Last update: 2024-08-29 05:13:09 UTC


README

Build status codecov License

danog/asyncConstruct 为 AMPHP 提供异步类构造函数和唤醒函数。

安装

composer require danog/async-construct

API

AsyncConstruct

示例

简单地在你的类中使用此特性,并定义一个 __construct_async 异步方法。
该特性将在构造时自动运行异步方法,并公开一组 API 以等待构造函数的结果进行初始化。

init()

会阻塞地等待异步构造函数的执行,返回其返回值。

initAsynchronously()

将返回一个承诺,当 yield 时,将等待并返回构造函数的返回值。

inited()

返回一个布尔值,指示类是否已初始化。

BlockingConstruct

示例

AsyncConstruct 完全相同,除了在构造时将自动调用阻塞的 init() 函数。

AsyncWakeup

示例

简单地在你的类中使用此特性,并定义一个 __wakeup_async 异步方法。
该特性将在反序列化时自动运行异步方法,并公开一组 API 以等待唤醒函数的结果进行重新初始化。

wakeup()

会阻塞地等待异步唤醒函数的执行,返回其返回值。

wakeupAsynchronously()

将返回一个承诺,当 yield 时,将等待并返回唤醒函数的返回值。

wokenUp()

返回一个布尔值,指示类是否已初始化。

BlockingWakeup

示例

AsyncWakeup 完全相同,除了在唤醒时将自动调用阻塞的 wakeup() 函数。