/// <summary> /// 消息接收事件 /// </summary> /// <param name="sender"></param> /// <param name="args"></param> private static void ConsumerOnReceived(object sender, BasicDeliverEventArgs args) { try { //消息属性 IBasicProperties properties = args.BasicProperties; //获取消息 byte[] body = args?.Body; if (body == null || body.Length == 0) { NLogHelper.Warn($"接收到空消息"); return; } RMqMessage msg = new RMqMessage() { Id = Guid.NewGuid().ToString(), ContentBytes = body, CreateTime = DateTime.Now }; RMqMessageHandler.Add(msg); } catch (Exception e) { NLogHelper.Error($"mq处理消息失败:{e}"); } }
/// <summary> /// 关闭定时器 /// </summary> public static void Stop() { try { if (_mqTimer != null) { _mqTimer.Dispose(); _mqTimer = null; } } catch { // ignored } //关闭MQ LongRunRabbitConsumer.StopConsumer(); //关闭消息处理 RMqMessageHandler.Stop(); }