private async Task OnEventCoreAsync(EventWrapper wrapper, BasicDeliverEventArgs eventArgs)
        {
            var eventRoute = wrapper.Key;

            if (_handler.TryGetValue(eventRoute, out var list))
            {
                await OnConsumeEvent?.Invoke(eventArgs, wrapper, list);
            }
        }
        internal async Task OnEvent(EventWrapper data, BasicDeliverEventArgs eventArgs)
        {
            if (data == null || data.Exchange == null || data.Queue == null || data.RouteKey == null || data.Event == null)
            {
                return;
            }

            if (!_canRead)
            {
                using (await _locker.LockAsync())
                {
                    await OnEventCoreAsync(data, eventArgs);
                }
            }
            else
            {
                await OnEventCoreAsync(data, eventArgs);
            }
        }