@@ -193,6 +193,7 @@ typedef void (*zend_async_resume_t)(zend_coroutine_t *coroutine, zend_object * e
193
193
typedef void (* zend_async_cancel_t )(zend_coroutine_t * coroutine , zend_object * error , bool transfer_error , const bool is_safely );
194
194
typedef bool (* zend_async_spawn_and_throw_t )(zend_object * exception , zend_async_scope_t * scope , int32_t priority );
195
195
typedef void (* zend_async_shutdown_t )(void );
196
+ typedef void (* zend_async_engine_shutdown_t )(void );
196
197
typedef zend_array * (* zend_async_get_coroutines_t )(void );
197
198
typedef void (* zend_async_add_microtask_t )(zend_async_microtask_t * microtask );
198
199
typedef zend_array * (* zend_async_get_awaiting_info_t )(zend_coroutine_t * coroutine );
@@ -1113,6 +1114,7 @@ ZEND_API extern zend_async_resume_t zend_async_resume_fn;
1113
1114
ZEND_API extern zend_async_cancel_t zend_async_cancel_fn ;
1114
1115
ZEND_API extern zend_async_spawn_and_throw_t zend_async_spawn_and_throw_fn ;
1115
1116
ZEND_API extern zend_async_shutdown_t zend_async_shutdown_fn ;
1117
+ ZEND_API extern zend_async_engine_shutdown_t zend_async_engine_shutdown_fn ;
1116
1118
ZEND_API extern zend_async_get_coroutines_t zend_async_get_coroutines_fn ;
1117
1119
ZEND_API extern zend_async_add_microtask_t zend_async_add_microtask_fn ;
1118
1120
ZEND_API extern zend_async_get_awaiting_info_t zend_async_get_awaiting_info_fn ;
@@ -1190,7 +1192,8 @@ ZEND_API bool zend_async_scheduler_register(
1190
1192
zend_async_add_microtask_t add_microtask_fn ,
1191
1193
zend_async_get_awaiting_info_t get_awaiting_info_fn ,
1192
1194
zend_async_get_class_ce_t get_class_ce_fn ,
1193
- zend_async_new_iterator_t new_iterator_fn
1195
+ zend_async_new_iterator_t new_iterator_fn ,
1196
+ zend_async_engine_shutdown_t engine_shutdown_fn
1194
1197
);
1195
1198
1196
1199
ZEND_API bool zend_async_reactor_register (
@@ -1330,6 +1333,7 @@ END_EXTERN_C()
1330
1333
*/
1331
1334
#define ZEND_ASYNC_SPAWN_AND_THROW (exception , scope , priority ) zend_async_spawn_and_throw_fn(exception, scope, priority)
1332
1335
#define ZEND_ASYNC_SHUTDOWN () zend_async_shutdown_fn()
1336
+ #define ZEND_ASYNC_ENGINE_SHUTDOWN () zend_async_engine_shutdown_fn()
1333
1337
#define ZEND_ASYNC_GET_COROUTINES () zend_async_get_coroutines_fn()
1334
1338
#define ZEND_ASYNC_ADD_MICROTASK (microtask ) zend_async_add_microtask_fn(microtask)
1335
1339
#define ZEND_ASYNC_GET_AWAITING_INFO (coroutine ) zend_async_get_awaiting_info_fn(coroutine)
0 commit comments