public override void NewResult(UniformPair <EventBean[]> results) { StatementResultService.Indicate(results); if (!IsDispatchWaiting.Value) { DispatchService.AddExternal(this); IsDispatchWaiting.Value = true; } }
public void Add(int[] payload) { _received.GetOrCreate().AddLast(payload); if (!_isDispatchWaiting.GetOrCreate()) { _dispatchService.AddExternal(this); _isDispatchWaiting.Value = true; } }
public void Add(int[] payload) { var local = LocalData; local.Received.AddLast(payload); if (!local.IsDispatchWaiting) { dispatchService.AddExternal(this); local.IsDispatchWaiting = true; } }
public override void NewResult(UniformPair <EventBean[]> results) { StatementResultService.Indicate(results); if (!IsDispatchWaiting.Value) { UpdateDispatchFutureWait nextFutureWait; lock (this) { nextFutureWait = new UpdateDispatchFutureWait(this, _currentFutureWait, _msecTimeout); _currentFutureWait.SetLater(nextFutureWait); _currentFutureWait = nextFutureWait; } DispatchService.AddExternal(nextFutureWait); IsDispatchWaiting.Value = true; } }
public void Add(int[] payload) { _received.GetOrCreate().AddLast(payload); if (!_isDispatchWaiting.GetOrCreate()) { DispatchFuture nextFuture; lock (this) { nextFuture = new DispatchFuture(this, _currentFuture); _currentFuture.Later = nextFuture; _currentFuture = nextFuture; } _dispatchService.AddExternal(nextFuture); _isDispatchWaiting.Value = true; } }
public void Add(int[] payload) { var local = LocalData; local.Received.AddLast(payload); if (!local.IsDispatchWaiting) { DispatchFuture nextFuture; lock (this) { nextFuture = new DispatchFuture(this, currentFuture); currentFuture.Later = nextFuture; currentFuture = nextFuture; } dispatchService.AddExternal(nextFuture); local.IsDispatchWaiting = true; } }
public override void NewResult(UniformPair <EventBean[]> result) { StatementResultService.Indicate(result); var isDispatchWaiting = IsDispatchWaiting; if (!isDispatchWaiting.Value) { UpdateDispatchFutureSpin nextFutureSpin; lock (this) { nextFutureSpin = new UpdateDispatchFutureSpin(this, _currentFutureSpin, _msecTimeout, _timeSourceService); _currentFutureSpin = nextFutureSpin; } DispatchService.AddExternal(nextFutureSpin); isDispatchWaiting.Value = true; } }