如何在 WCF 操作中创建异步/后台进程

本文关键字:创建 异步 后台进程 操作 WCF | 更新日期: 2023-09-27 18:32:16

在我的WCF操作中,我将执行操作所需的逻辑:保存记录,获取数据集等,在某些情况下,我还需要记录活动。 但是,在这些情况下,我认为让客户端应用程序等待 WCF 操作来记录活动是没有意义的。 我想启动日志记录过程,然后立即将任何必要的内容返回给客户端,而无需等待日志记录过程完成。

我不在乎知道日志记录过程何时完成,只需发射并忘记即可。

我也更喜欢使用BasicHttpBinding来保持最大的互操作性。

这可能吗? 有人愿意分享编码示例或指向带有编码示例的网站的链接吗?

如何在 WCF 操作中创建异步/后台进程

这可以使用任意数量的线程技术轻松完成。

对于一个非常简单的示例,请尝试修改以下内容:

// Log something going on.
System.Threading.ThreadPool.QueueUserWorkItem((args) =>
{
   System.Diagnostics.EventLog.WriteEntry("my source", "my logging message");
});

在该 lambda 方法中,您可以使用您喜欢的任何日志记录类,如果您想记录某些当前状态,您可以将局部变量包含在记录器中。