2010-09-03 1 views
6

Выполняет ли операции OneWay в службе WCF до тех пор, пока операция завершена?Есть ли время ожидания выполнения WCF, отмеченное как OneWay?

По моему эксперименту, я думаю, что нет таймаута. Мне удалось проработать полчаса. (Я закрыл после этого)

Может ли кто-то испытать в WCF ответить на это? Если есть тайм-аут, где я могу указать его

ответ

4

Операции OneWay не ожидают ответа на сообщение. Он просто записывает данные в сетевое соединение и возвращается. Таким образом, единственным «временем ожидания» будет время, необходимое для записи сообщения в сеть.

Имейте в виду, однако, что WCF может еще блокировать клиента (Clients Blocking with One-Way Operations):

это означает, что любая проблема записи данных на транспорте позволяет клиенту вернуться. В зависимости от проблемы результатом может быть исключение или задержка в отправке сообщений в службу.

Редактировать: Что касается тайм-аута, они устанавливаются на привязку. Если ваша операция не может выполнить его «Отправить сообщение», он все равно может перехватить тайм-аут.

+1

Предполагая, что операция от клиента прошла успешно, и сервер получил сообщение, есть ли время ожидания для выполнения? – Sandeep

+1

Я так не думаю. –

2

Нет таймаута. Вы должны справиться с этим в процессе работы. Тайм-ауты связаны с работой с каналами, но в случае односторонней операции сообщение принимается и передается в эксплуатацию, и больше никакого взаимодействия с каналом никогда не будет.