예제 #1
0
        public async Task <QueueSubscription> SubscribeAsync(string queueName, CancellationToken cancellationToken = default(CancellationToken))
        {
            var subscription = new QueueSubscription(Connection);
            await subscription.Connect(queueName, cancellationToken);

            return(subscription);
        }
예제 #2
0
        public async Task <QueueSubscription> CreateCallbackAsync(string callback, CancellationToken cancellationToken = default(CancellationToken))
        {
            var subscription = new QueueSubscription(Connection, isCallback: true);

            try
            {
                await subscription.Connect(callback, cancellationToken);
            }
            catch (Exception)
            {
                try
                {
                    ((IDisposable)subscription).Dispose();
                }
                catch (Exception) { }

                throw;
            }

            return(subscription);
        }