Использование реактивного расширения (Rx) для получения сообщений MSMQ с использованием асинхронного шаблона (queue.BeginReceive, queue.EndReceive)

Я уже некоторое время использую Rx для событий в моих проектах и ​​специально для программирования Socket, и что хорошо, так это то, что он хорошо справляется. Управление моим кодом, преимущество в производительности и гораздо лучшее выполнение и интерпретация.

В последнее время мне пришлось изменить поток процесса моего проекта, где мне нужно сбрасывать все входящие данные (из операций сокета) в очереди ( с использованием реализации MSMQ, как было решено для постановки в очередь ).

Поскольку MSMQ предоставляет асинхронный вызов для удаления сообщений из очереди (но по странному шаблону). Сейчас я изо всех сил пытаюсь использовать Rx для этой цели, но могу это сделать.

Вопрос: Может ли кто-нибудь дать мне чистый пример кода для реализации Rx для получения сообщений из очереди с использованием шаблона Async.

Мне нужна реализация асинхронного оператора для MSMQ, аналогичная этой

var data = Observable.FromAsyncPattern<byte[]>(
                        this.receiverSocket.BeginReceive,
                        this.receiverSocket.EndReceive(some parameters);

Заранее спасибо. * приветствует * Rx и .NET

10
задан Jsinh 4 November 2011 в 07:06
поделиться