protected virtual void OnResultsReady(BackgroundParserResultsReadyEventArgs args) { using (SynchronizeMainThreadState()) { ResultsReady?.Invoke(this, args); } }
protected virtual void OnResultsReady(DocumentStructureChangedEventArgs args) { using (SynchronizeMainThreadState()) { ResultsReady?.Invoke(this, args); } }
private void DecPing() { lock (lockObj) { pingsActive--; if (pingSendComplete && pingsActive == 0) { ResultsReady?.Invoke(this, null); } } }
Task IMultiplayerClient.ResultsReady() { Scheduler.Add(() => { if (Room == null) { return; } ResultsReady?.Invoke(); }, false); return(Task.CompletedTask); }
public void ReturnParcel(BackgroundParserResultsReadyEventArgs args) { lock (_stateLock) { // Clear the current parcel cancellation source if (_currentParcelCancelSource != null) { _currentParcelCancelSource.Dispose(); _currentParcelCancelSource = null; } // If there are things waiting to be parsed, just don't fire the event because we're already out of date if (_changes.Any()) { return; } } ResultsReady?.Invoke(this, args); }