Пример #1
0
        private void OnAsyncStateEvent(string channel, string message)
        {
            if (RedisUtility.TryParseEventMessage(message, out var action, out var parameter) && parameter.HasValue())
            {
                // parameter is "key"
                switch (action)
                {
                case "cancel":
                    if (TryCancel(parameter, true))
                    {
                        Logger.Debug($"AsyncState '{parameter}' canceled by request from another node.");
                    }
                    break;

                case "removects":
                    if (TryRemoveCancelTokenSource(parameter, true, out _))
                    {
                        Logger.Debug($"AsyncState '{parameter}' removed by request from another node.");
                    }
                    break;
                }
            }
        }