Exemplo n.º 1
0
 public void Add(Guid id, InteractionType type, InteractionState state = InteractionState.Regular)
 {
     lock (_queueLocker)
     {
         _queue.Add(InteractionItem.GetItem(id, type, state));
     }
 }
Exemplo n.º 2
0
 public void Remove(Guid id)
 {
     lock (_queueLocker)
     {
         var item = _queue.FirstOrDefault(i => i.Id == id);
         _queue.Remove(InteractionItem.PutItem(item));
     }
 }
Exemplo n.º 3
0
 public static InteractionItem GetItem(Guid id, InteractionType type, InteractionState state)
 {
     if (!_itemsPool.TryTake(out InteractionItem item))
     {
         item = new InteractionItem();
     }
     item.Id              = id;
     item.Type            = type;
     item.State           = state;
     item.WasTouchChanged = false;
     return(item);
 }
Exemplo n.º 4
0
 public static InteractionItem PutItem(InteractionItem item)
 {
     _itemsPool.Add(item);
     return(item);
 }