Completer<T> 构造函数
创建一个新的Completer。
创建新的Future的一般工作流程是:1) 创建一个新的Completer,2) 分配其Future,然后在稍后的某个时刻,3) 调用complete或completeError。
Completer异步完成Future。这意味着当调用complete或completeError时,注册在Future上的回调不会立即被调用。相反,回调会被延迟到后续的微任务。
示例
var completer = new Completer();
handOut(completer.future);
later: {
completer.complete('completion value');
}
实现
factory Completer() => new _AsyncCompleter<T>();