Files

28 lines
828 B
Plaintext
Raw Permalink Normal View History

// @env NYASH_PLUGIN_ONLY=1
// @env NYASH_AWAIT_MAX_MS=500
// Demo: TaskGroupBox.joinAll() scaffold
// Note: In plugins-only mode, new TaskGroupBox() may be a no-op; this demo
// focuses on end-of-program joinAll via runner and explicit call safety.
local fut, arr
// Prepare a plugin-backed Array and spawn a method via env.future.spawn_instance
arr = new ArrayBox()
arr.push(1)
arr.push(2)
arr.push(3)
// nowait: simulate async by invoking plugin via env.future.spawn_instance
// Note: In current pipeline, MIR builder lowers nowait ... to env.future.spawn_instance
nowait fut = arr.length()
// Optionally wait with timeout (builder inserts safepoint before/after)
local r
r = await fut
// Runner will best-effort join all registered futures at program end
// Print result for visual confirmation
print("Result: " + r)