finish方法
- {Map? arguments}
完成已启动的最后一个同步操作。可选地接受一个arguments
的Map。
实现
void finish({Map? arguments}) {
if (!_hasTimeline) {
return;
}
if (_stack.length == 0) {
throw new StateError('Uneven calls to start and finish');
}
if (_filterKey != null) {
arguments ??= {};
arguments[_kFilterKey] = _filterKey;
}
// Pop top item off of stack.
var block = _stack.removeLast();
if (block == null) {
// Dart stream was disabled when start was called.
return;
}
block._finish(arguments);
}