public void Remove(ILoadBalanced item)
 {
     LoadBalancedQueue.LoadBalancerItem loadBalancerItem = this._queue.Remove((LoadBalancedQueue.LoadBalancerItem o) => o.item == item);
     if (loadBalancerItem != null)
     {
         loadBalancerItem.Dispose();
     }
 }
Exemplo n.º 2
0
        public LinkedListNode <ILoadBalanced> Add(ILoadBalanced item)
        {
            var node = new LinkedListNode <ILoadBalanced>(item);

            Items.AddLast(node);

            return(node);
        }
        /// <summary>
        /// Removes the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        public void Remove(ILoadBalanced item)
        {
            var lbi = _queue.Remove(o => o.item == item);

            if (lbi != null)
            {
                lbi.Dispose();
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Adds the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
        /// <param name="delayFirstUpdateBy">The delay by which the first update of the item will be scheduled.</param>
        public void Add(ILoadBalanced item, float interval, float delayFirstUpdateBy)
        {
            var now       = UnityServices.time.time;
            var queueItem = new LoadBalancerItem
            {
                lastUpdate = now,
                nextUpdate = now + delayFirstUpdateBy,
                interval   = interval,
                item       = item
            };

            _queue.Add(queueItem);
        }
        /// <summary>
        /// Adds the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
        /// <param name="delayFirstUpdateBy">The delay by which the first update of the item will be scheduled.</param>
        public ILoadBalancedHandle Add(ILoadBalanced item, float interval, float delayFirstUpdateBy)
        {
            var now       = _time();
            var queueItem = new LoadBalancerItem
            {
                parent     = this,
                lastUpdate = now,
                nextUpdate = now + delayFirstUpdateBy,
                interval   = interval,
                item       = item
            };

            _queue.Add(queueItem);
            return(queueItem);
        }
        public ILoadBalancedHandle Add(ILoadBalanced item, float interval, float delayFirstUpdateBy)
        {
            float single = Time.time;

            LoadBalancedQueue.LoadBalancerItem loadBalancerItem = new LoadBalancedQueue.LoadBalancerItem()
            {
                parent     = this,
                lastUpdate = single,
                nextUpdate = single + delayFirstUpdateBy,
                interval   = interval,
                item       = item
            };
            this._queue.Add(loadBalancerItem);
            return(loadBalancerItem);
        }
 public ILoadBalancedHandle Add(ILoadBalanced item, float interval, bool delayFirstUpdate)
 {
     return(this.Add(item, interval, (delayFirstUpdate ? interval : 0f)));
 }
Exemplo n.º 8
0
 /// <summary>
 /// Removes the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 public void Remove(ILoadBalanced item)
 {
     _queue.Remove(o => o.item == item);
 }
 public void set_item(ILoadBalanced value)
 {
     this.< item > k__BackingField = value;
 }
Exemplo n.º 10
0
        /// <summary>
        /// Adds the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
        /// <param name="delayFirstUpdate">if set to <c>true</c> the item will be scheduled for its first update <paramref name="interval"/> into the future, otherwise its first update will be as soon as possible.</param>
        public void Add(ILoadBalanced item, float interval, bool delayFirstUpdate)
        {
            var delay = delayFirstUpdate ? interval : 0.0f;

            Add(item, interval, delay);
        }
Exemplo n.º 11
0
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
 public void Add(ILoadBalanced item, float interval)
 {
     Add(item, interval, 0.0f);
 }
Exemplo n.º 12
0
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 /// <param name="delayFirstUpdate">if set to <c>true</c> the item will be scheduled for its first update <see cref="defaultUpdateInterval"/> into the future, otherwise its first update will be as soon as possible.</param>
 public void Add(ILoadBalanced item, bool delayFirstUpdate)
 {
     Add(item, this.defaultUpdateInterval, delayFirstUpdate);
 }
Exemplo n.º 13
0
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 public void Add(ILoadBalanced item)
 {
     Add(item, this.defaultUpdateInterval, 0.0f);
 }
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 public ILoadBalancedHandle Add(ILoadBalanced item)
 {
     return(Add(item, this.defaultUpdateInterval, 0.0f));
 }
        /// <summary>
        /// Adds the specified item.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
        /// <param name="delayFirstUpdate">if set to <c>true</c> the item will be scheduled for its first update <paramref name="interval"/> into the future, otherwise its first update will be as soon as possible.</param>
        public ILoadBalancedHandle Add(ILoadBalanced item, float interval, bool delayFirstUpdate)
        {
            var delay = delayFirstUpdate ? interval : 0.0f;

            return(Add(item, interval, delay));
        }
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 /// <param name="interval">The interval between updates. This overrides the <see cref="defaultUpdateInterval"/>.</param>
 public ILoadBalancedHandle Add(ILoadBalanced item, float interval)
 {
     return(Add(item, interval, 0.0f));
 }
 /// <summary>
 /// Adds the specified item.
 /// </summary>
 /// <param name="item">The item.</param>
 /// <param name="delayFirstUpdate">if set to <c>true</c> the item will be scheduled for its first update <see cref="defaultUpdateInterval"/> into the future, otherwise its first update will be as soon as possible.</param>
 public ILoadBalancedHandle Add(ILoadBalanced item, bool delayFirstUpdate)
 {
     return(Add(item, this.defaultUpdateInterval, delayFirstUpdate));
 }