示例#1
0
        /// <summary>
        ///     Adds a new delayed action.
        /// </summary>
        /// <param name="item">The <see cref="DelayActionItem" /> to add.</param>
        public static void Add(DelayActionItem item)
        {
            Signal.Create(
                (sender, args) =>
                    {
                        var delayActionItem = (DelayActionItem)args.Signal.Properties["DelayActionItem"];

                        if (delayActionItem.Token.IsCancellationRequested)
                        {
                            return;
                        }

                        delayActionItem.Function();
                    },
                signal =>
                    {
                        var delayActionItem = (DelayActionItem)signal.Properties["DelayActionItem"];
                        return Variables.TickCount >= delayActionItem.Time;
                    },
                default(DateTimeOffset),
                new Dictionary<string, object> { { "DelayActionItem", item } });
        }
示例#2
0
        /// <summary>
        ///     Adds a new delayed action.
        /// </summary>
        /// <param name="item">The <see cref="DelayActionItem" /> to add.</param>
        public static void Add(DelayActionItem item)
        {
            Signal.Create(
                (sender, args) =>
            {
                var delayActionItem = (DelayActionItem)args.Signal.Properties["DelayActionItem"];

                if (delayActionItem.Token.IsCancellationRequested)
                {
                    return;
                }

                delayActionItem.Function();
            },
                signal =>
            {
                var delayActionItem = (DelayActionItem)signal.Properties["DelayActionItem"];
                return(Variables.TickCount >= delayActionItem.Time);
            },
                default(DateTimeOffset),
                new Dictionary <string, object> {
                { "DelayActionItem", item }
            });
        }