Establishes a scope in which calls to State.setState are forbidden, and
calls the given callback.
This mechanism is used to ensure that, for instance, State.dispose does not call State.setState.
Source
void lockState(void callback()) {
assert(callback != null);
assert(_debugStateLockLevel >= 0);
assert(() {
_debugStateLockLevel += 1;
return true;
});
try {
callback();
} finally {
assert(() {
_debugStateLockLevel -= 1;
return true;
});
}
assert(_debugStateLockLevel >= 0);
}