Async/Await
Asynchronous programming with futures.
Async Functions
async function fetchData(source) {
print("Fetching from " + source);
return "Data:" + source;
}
Await
var result = await fetchData("API");
print(result); // Data:API
Parallel Tasks
async function main() {
// Start tasks in parallel
var task1 = fetchData("API");
var task2 = fetchData("Database");
// Wait for results
var r1 = await task1;
var r2 = await task2;
print("Results: " + r1 + ", " + r2);
}
main();
With Timer
async function delayedTask() {
print("Starting...");
ucoreTimer.sleep(1000); // 1 second
print("Done!");
return "Complete";
}
var result = await delayedTask();
Important Notes
- Futures cannot be used directly in conditionals
- Always
awaitbefore using the value - Async functions return immediately with a Future