Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

51 lignes
1.2KB

  1. using HealthMonitor.Service.Resolver.Interface;
  2. using HealthMonitor.Service.Sub;
  3. using HealthMonitor.Service.Sub.Interface;
  4. using System.Collections.Concurrent;
  5. namespace HealthMonitor.WebApi
  6. {
  7. public class PackageProcess : IDisposable
  8. {
  9. private readonly ILogger<PackageProcess> _logger;
  10. private readonly MsgQueueManager _msgQueueManager;
  11. public PackageProcess(ILogger<PackageProcess> logger, MsgQueueManager msgQueueManager)
  12. {
  13. _logger = logger;
  14. _msgQueueManager = msgQueueManager;
  15. }
  16. public async Task<bool> ResolveAsync()
  17. {
  18. var resolver = _msgQueueManager.GetMsgResolver();
  19. try
  20. {
  21. if (resolver != null)
  22. {
  23. await resolver.ExecuteMessageAsync().ConfigureAwait(false);
  24. }
  25. }
  26. catch (Exception ex)
  27. {
  28. _logger.LogError("未处理异常 message: {ex.Message}\n {ex.StackTrace}", ex.Message, ex.StackTrace);
  29. }
  30. return true;
  31. }
  32. public void Dispose()
  33. {
  34. throw new NotImplementedException();
  35. }
  36. }
  37. }