本文整理汇总了C#中IReceiver.Receive方法的典型用法代码示例。如果您正苦于以下问题:C# IReceiver.Receive方法的具体用法?C# IReceiver.Receive怎么用?C# IReceiver.Receive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IReceiver
的用法示例。
在下文中一共展示了IReceiver.Receive方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Receive
public ReceivingState Receive(IReceiver receiver)
{
var stream = _queueManager.ReceiveStream(_queueName);
foreach (var message in stream.TakeWhile(message => !_disposed))
{
receiver.Receive(message.Message.Data, new NameValueHeaders(message.Message.Headers),
new TransactionCallback(message.TransactionalScope, message.Message, _delayedMessages));
}
return ReceivingState.StopReceiving;
}
示例2: Receive
public ReceivingState Receive(IReceiver receiver)
{
_disposable = _queueManager.Receive(_queueName).Subscribe(message =>
{
Task.Run(() =>
{
receiver.Receive(message.Message.Data, new DictionaryHeaders(message.Message.Headers),
new TransactionCallback(message.QueueContext, message.Message));
});
});
return ReceivingState.StopReceiving;
}
示例3: Receive
public void Receive(IReceiver receiver)
{
while (!_disposed)
{
foreach (var data in _queue.GetConsumingEnumerable())
{
using (var stream = new MemoryStream(data))
{
var token = _formatter.Deserialize(stream).As<EnvelopeToken>();
var callback = new InMemoryCallback(this, token);
receiver.Receive(token.Data, token.Headers, callback);
}
}
}
}