Esempio n. 1
0
 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;
            }
        }
Esempio n. 4
0
        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;
            }
        }
Esempio n. 5
0
        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;
            }
        }