startSync method
Start a synchronous operation labeled name
. Optionally takes
a Map of arguments
. This slice may also optionally be associated with
a Flow event. This operation must be finished before
returning to the event queue.
Implementation
static void startSync(String name, {Map arguments, Flow flow}) {
if (_isProduct) {
return;
}
if (name is! String) {
throw new ArgumentError.value(name, 'name', 'Must be a String');
}
if (!_isDartStreamEnabled()) {
// Push a null onto the stack and return.
_stack.add(null);
return;
}
var block = new _SyncBlock._(name, _getTraceClock(), _getThreadCpuClock());
if (arguments is Map) {
block._arguments = arguments;
}
if (flow is Flow) {
block.flow = flow;
}
_stack.add(block);
}