Существует ли время ожидания для операций WCF, помеченных как OneWay? - PullRequest
6 голосов
/ 03 сентября 2010

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

По моему эксперименту, тайм-аут не определен.Я смог провести операцию за полчаса.(Я закрыл после этого)

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

Ответы [ 2 ]

4 голосов
/ 03 сентября 2010

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

Следует помнить, что WCF все еще может блокировать клиента ( Блокировка клиентов с помощью односторонних операций ):

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

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

2 голосов
/ 03 сентября 2010

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

...