Пример #1
0
        public Ticket LockLowPriority()
        {
            var ticket = ticketPool.Acquire();

            if (lowPriorityTicket == null && highPriorityTicket == null)
            {
                lowPriorityTicket = ticket;
            }

            return(ticket);
        }
Пример #2
0
        /// <summary>
        /// Yield return Wait.For(seconds) to actually pause execution of your coroutine
        /// for a given amount of time.
        /// </summary>
        /// <param name="seconds"> time in seconds </param>
        /// <returns> A Yieldable object (you can "yield return" it).</returns>
        public static IYieldable For(float seconds)
        {
            if (seconds <= 0)
            {
                return(null);
            }

            var item = WaitPool.Acquire();

            item.waitPool   = WaitPool;
            item.TimeToWait = seconds;
            return(item);
        }