我有一个处理一些输入的慢速函数。当函数被大量调用时,白天会有高峰时间。我不希望这在消费者方面引入滞后。因此,我希望该函数将输入添加到队列中,然后返回 true,而不是让这个函数完成它的工作然后返回 true。然后我希望队列在后台处理,直到它为空。
您能告诉我在 C# 中执行此操作的最佳方法吗?
这是我开始使用的一些示例代码:
namespace WCFServiceWebRole1
{
public class Service1 : IService1
{
public bool SlowFunction(string input)
{
// Here is a slow function that processes input...
return true;
}
}
}
namespace WCFServiceWebRole1
{
public class Service1 : IService1
{
public bool SlowFunction(string input)
{
AddToQueue(input);
return true;
}
}
}