@@ -1721,11 +1721,12 @@ If `cancellable` is set, `waitable-set.wait` may return `task-cancelled`
1721
1721
propagated once received.
1722
1722
1723
1723
If ` 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.
1729
1730
1730
1731
A ` subtask ` event notifies the supertask that its subtask is now in the given
1731
1732
state (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`
1762
1763
propagated once received.
1763
1764
1764
1765
If ` 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.
1770
1772
1771
1773
The Canonical ABI of ` waitable-set.poll ` is the same as ` waitable-set.wait `
1772
1774
(with the ` none ` case indicated by returning ` 0 ` ).
@@ -2103,11 +2105,12 @@ if `cancellable` was set, [cancellation], `thread.switch-to` will return,
2103
2105
indicating what happened.
2104
2106
2105
2107
If ` 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.
2111
2114
2112
2115
For details, see [ ` canon_thread_switch_to ` ] in the Canonical ABI explainer.
2113
2116
@@ -2126,11 +2129,12 @@ the current thread is resumed by some other thread or, if `cancellable` was
2126
2129
set, [ cancellation] , ` thread.suspend ` will return, indicating what happened.
2127
2130
2128
2131
If ` 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.
2134
2138
2135
2139
For details, see [ ` canon_thread_suspend ` ] in the Canonical ABI explainer.
2136
2140
@@ -2163,11 +2167,12 @@ due to runtime scheduling or, if `cancellable` was set, [cancellation],
2163
2167
` thread.yield-to ` will return, indicating what happened.
2164
2168
2165
2169
If ` 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.
2171
2176
2172
2177
For details, see [ waiting] in the concurrency explainer and
2173
2178
[ ` canon_thread_yield_to ` ] in the Canonical ABI explainer.
@@ -2187,11 +2192,12 @@ resumed either due to runtime scheduling or, if `cancellable` was set,
2187
2192
[ cancellation] , ` thread.yield ` will return, indicating what happened.
2188
2193
2189
2194
If ` 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.
2195
2201
2196
2202
For details, see [ waiting] in the concurrency explainer and
2197
2203
[ ` canon_thread_yield ` ] in the Canonical ABI explainer.
0 commit comments