Вы хотите побочный эффект, о котором клиент не будет знать или контролировать успех? Это является асинхронной обработкой, даже если вы возвращаете немедленный синхронный ответ. Если результаты являются наблюдаемыми и представляют интерес для клиента, у вас должен быть способ для клиентов и операторов определить, удалось ли это впоследствии.
Это зависит от того, как вы размещаете свои веб-сервисы (что ортогонально от WCF, обеспечивающего уровень связи и активации). Обычный хостинг веб-сервисов не позволит вам обрабатывать вещи вне вызовов WS, в основном, чтобы не позволить вам выстрелить себе в ногу и съесть все ресурсы сервера.
- Под хостингом ASP.NET ASMX вы можете ввести еще одну задачу в пул потоков : однако это может быть прекращено без предупреждения, если нагрузка на сервер слишком велика. Недавно нам пришлось прибегнуть к этому в производственном сервисе: к счастью, сервер не испытывает больших нагрузок. Мы несколько нервничаем по поводу надежности этого решения.
- Я не работал со Windows Activation Services , но должен быть способ создания дополнительной работы в отдельном потоке.
- Вы всегда можете реализовать свой собственный рабочий процесс, например, в качестве службы Windows, и при необходимости предоставьте ей работу. Это не очень сложно, но требует некоторой работы для надежного и масштабируемого выполнения. Не любимый, и такой сценарий БЫЛ предназначен для решения.
Создать другой поток очень просто, но IIS не должен позволять вам делать это свободно, особенно если он работает в любом веб-отеле с несколькими приложениями.