Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Worker : IHostedService
- {
- private readonly IEnumerable<IAzureRelayListener> _listeners;
- private readonly ILogger _logger;
- public Worker(IEnumerable<IAzureRelayListener> listeners, ILogger<Worker> logger)
- {
- _listeners = listeners;
- _logger = logger;
- }
- public async Task StartAsync(CancellationToken cancellationToken)
- {
- _logger.LogInformation("Starting Worker");
- foreach (var listener in _listeners)
- {
- try
- {
- await listener.StartAsync();
- }
- catch (Exception e)
- {
- _logger.LogCritical(e, "Could not start listener");
- }
- }
- }
- public async Task StopAsync(CancellationToken cancellationToken)
- {
- _logger.LogInformation("Stopping Worker");
- foreach (var listener in _listeners)
- {
- try
- {
- await listener.StopAsync();
- }
- catch (Exception e)
- {
- _logger.LogWarning(e, "Could not gracefully stop listener");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement