@@ -1721,11 +1721,12 @@ If `cancellable` is set, `waitable-set.wait` may return `task-cancelled`
17211721propagated once received.
17221722
17231723If ` waitable-set.wait ` is called from a synchronous- or ` async callback ` -lifted
1724- export, no other synchronous- or ` async callback ` -lifted threads can start or
1725- progress in the current component instance (ensuring non-reentrance of the core
1726- wasm code) until it returns. However, explicitly-created threads and
1727- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
1728- at any time.
1724+ export, no other threads that were implicitly created by a separate
1725+ synchronous- or ` async callback ` -lifted export call can start or progress in
1726+ the current component instance until ` waitable-set.wait ` returns (thereby
1727+ ensuring non-reentrance of the core wasm code). However, explicitly-created
1728+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
1729+ ("stackful async") exports may start or progress at any time.
17291730
17301731A ` subtask ` event notifies the supertask that its subtask is now in the given
17311732state (the meanings of which are described by the [ concurrency explainer] ).
@@ -1762,11 +1763,12 @@ If `cancellable` is set, `waitable-set.poll` may return `task-cancelled`
17621763propagated once received.
17631764
17641765If ` waitable-set.poll ` is called from a synchronous- or ` async callback ` -lifted
1765- export, no other synchronous- or ` async callback ` -lifted threads can start or
1766- progress in the current component instance (ensuring non-reentrance of the core
1767- wasm code) until it returns. However, explicitly-created threads and
1768- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
1769- at any time.
1766+ export, no other threads that were implicitly created by a separate
1767+ synchronous- or ` async callback ` -lifted export call can start or progress in
1768+ the current component instance until ` waitable-set.poll ` returns (thereby
1769+ ensuring non-reentrance of the core wasm code). However, explicitly-created
1770+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
1771+ ("stackful async") exports may start or progress at any time.
17701772
17711773The Canonical ABI of ` waitable-set.poll ` is the same as ` waitable-set.wait `
17721774(with the ` none ` case indicated by returning ` 0 ` ).
@@ -2103,11 +2105,12 @@ if `cancellable` was set, [cancellation], `thread.switch-to` will return,
21032105indicating what happened.
21042106
21052107If ` thread.switch-to ` is called from a synchronous- or ` async callback ` -lifted
2106- export, no other synchronous- or ` async callback ` -lifted threads can start or
2107- progress in the current component instance (ensuring non-reentrance of the core
2108- wasm code) until it returns. However, explicitly-created threads and
2109- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
2110- at any time.
2108+ export, no other threads that were implicitly created by a separate
2109+ synchronous- or ` async callback ` -lifted export call can start or progress in
2110+ the current component instance until ` thread.switch-to ` returns (thereby
2111+ ensuring non-reentrance of the core wasm code). However, explicitly-created
2112+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
2113+ ("stackful async") exports may start or progress at any time.
21112114
21122115For details, see [ ` canon_thread_switch_to ` ] in the Canonical ABI explainer.
21132116
@@ -2126,11 +2129,12 @@ the current thread is resumed by some other thread or, if `cancellable` was
21262129set, [ cancellation] , ` thread.suspend ` will return, indicating what happened.
21272130
21282131If ` thread.suspend ` is called from a synchronous- or ` async callback ` -lifted
2129- export, no other synchronous- or ` async callback ` -lifted threads can start or
2130- progress in the current component instance (ensuring non-reentrance of the core
2131- wasm code) until it returns. However, explicitly-created threads and
2132- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
2133- at any time.
2132+ export, no other threads that were implicitly created by a separate
2133+ synchronous- or ` async callback ` -lifted export call can start or progress in
2134+ the current component instance until ` thread.suspend ` returns (thereby
2135+ ensuring non-reentrance of the core wasm code). However, explicitly-created
2136+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
2137+ ("stackful async") exports may start or progress at any time.
21342138
21352139For details, see [ ` canon_thread_suspend ` ] in the Canonical ABI explainer.
21362140
@@ -2163,11 +2167,12 @@ due to runtime scheduling or, if `cancellable` was set, [cancellation],
21632167` thread.yield-to ` will return, indicating what happened.
21642168
21652169If ` thread.yield-to ` is called from a synchronous- or ` async callback ` -lifted
2166- export, no other synchronous- or ` async callback ` -lifted threads can start or
2167- progress in the current component instance (ensuring non-reentrance of the core
2168- wasm code) until it returns. However, explicitly-created threads and
2169- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
2170- at any time.
2170+ export, no other threads that were implicitly created by a separate
2171+ synchronous- or ` async callback ` -lifted export call can start or progress in
2172+ the current component instance until ` thread.yield-to ` returns (thereby
2173+ ensuring non-reentrance of the core wasm code). However, explicitly-created
2174+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
2175+ ("stackful async") exports may start or progress at any time.
21712176
21722177For details, see [ waiting] in the concurrency explainer and
21732178[ ` canon_thread_yield_to ` ] in the Canonical ABI explainer.
@@ -2187,11 +2192,12 @@ resumed either due to runtime scheduling or, if `cancellable` was set,
21872192[ cancellation] , ` thread.yield ` will return, indicating what happened.
21882193
21892194If ` thread.yield ` is called from a synchronous- or ` async callback ` -lifted
2190- export, no other synchronous- or ` async callback ` -lifted threads can start or
2191- progress in the current component instance (ensuring non-reentrance of the core
2192- wasm code) until it returns. However, explicitly-created threads and
2193- non-` callback ` ` async ` -lifted ("stackful async") exports may start or progress
2194- at any time.
2195+ export, no other threads that were implicitly created by a separate
2196+ synchronous- or ` async callback ` -lifted export call can start or progress in
2197+ the current component instance until ` thread.yield ` returns (thereby
2198+ ensuring non-reentrance of the core wasm code). However, explicitly-created
2199+ threads and threads implicitly created by non-` callback ` ` async ` -lifted
2200+ ("stackful async") exports may start or progress at any time.
21952201
21962202For details, see [ waiting] in the concurrency explainer and
21972203[ ` canon_thread_yield ` ] in the Canonical ABI explainer.
0 commit comments