gpt4 book ai didi

c# - WCF REST - 是否可以在不结束执行的情况下返回响应?

转载 作者:行者123 更新时间:2023-11-30 20:36:03 25 4
gpt4 key购买 nike

你很可能会发现,我对一般的异步操作不是很有经验(只使用过 Android 的 AsyncTask)。

这是 WCF REST POST 方法的概要;我将使用这张图片来解释我想要实现的目标。

enter image description here

FirstJob 将一些内容保存到数据库中。

SecondJob 读取保存在数据库中的内容并对数据进行一些处理。

客户端不关心SecondJob发生了什么,只想收到FirstJob的响应。

所以这两个作业不需要并行运行,因为 SecondJob 依赖于 FirstJob; SecondJob 理想情况下会在单独的线程/上下文(?)或类似的线程中运行。

根据我的观察,第二个作业确实在一个单独的线程中启动,在第二个作业运行时执行到达 return 语句,但请求直到 SecondJob 完成后才结束。

最佳答案

我个人会将第二个作业视为单独的 POST 操作,并从 Controller 调用第二个作业 POST。 Controller 是第一个作业的 Controller ,可以从第一个作业返回正确的状态;它恰好在执行此操作时将 POST 调用到第二个端点。

这种方法的好处是,第二个作业甚至不需要在同一个 IIS 上(在 NLB 场中,它可以在任何地方),因此您可以免费获得负载平衡。或者,“第二个作业服务器”可以位于专门为此类后台处理任务保留的特定 URL 上。

关于c# - WCF REST - 是否可以在不结束执行的情况下返回响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37340036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com