method TaskClass.prototype.perform
Private
TaskClass.prototype.perform(): this

Starts the run now without suspending the caller (ember-concurrency's verb), so work can overlap: task.perform() early, await task later joins the in-flight run. Idempotent — on a running or settled Task it is a no-op join. Returns this for chaining.

An unconsumed performed Task that fails becomes an unhandled rejection, exactly like any un-awaited promise — perform-and-forget still wants a .result() or a recover somewhere.

const scanChanges = (root: string, ref: string) => Task(() => new Set([root, ref]));
const buildFsTree = async (config: object): Promise<object> => config;

const scan = scanChanges('.', 'HEAD').perform(); // git starts NOW
const tree = await buildFsTree({}); // overlapped work
const changes = await scan; // join the in-flight run — no second git call

Return Type

this

Usage

import { TaskClass } from "lib/task/task.ts";