internal void FireOnUpdateBegin() {
if (_ownerThread != Thread.CurrentThread.ManagedThreadId) {
Debug.Fail(_threadContextInvalidMessage);
return;
}
try {
UpdateBegin?.Invoke(this, EventArgs.Empty);
} catch (Exception ex) {
Debug.Assert(false, Invariant($"Exception thrown in a tree.UpdateBegin event handler: {ex.Message}"));
}
}