Exemple #1
0
        async Task BackgroundProcessing(CancellationToken cancellationToken)
        {
            while (!cancellationToken.IsCancellationRequested)
            {
                var queueItem = await notificationsQueue.DequeueAsync(cancellationToken);

                try
                {
                    if (queueItem is not null && !cancellationToken.IsCancellationRequested)
                    {
                        await ProcessQueueItemAsync(queueItem);
                    }
                }
                catch (Exception ex)
                {
                    logger.LogError(ex, "Error occurred processing {queueItem}.", queueItem);
                }
            }
        }