c# – 排队方法调用 – 任何想法怎么样?

前端之家收集整理的这篇文章主要介绍了c# – 排队方法调用 – 任何想法怎么样?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我写了一个非常不同寻常的应用程序.

我正在寻找一种排队方法调用方法,类似于BeginInvoke / EndInvoke做的….但是在我的OWN队列中. reaqson是我使用线程池进行自己的优化消息队列系统,但同时确保每个组件在请求中是单线程的(即一个线程只处理组件的消息).

我有很多消息来回传递.对于有限的使用,我真的很希望能够使用参数排队一个消息调用,而不必定义我自己的参数,方法包装/解包只是为了做很多赞美调用.我也不总是想绕过队列,我绝对不希望发送服务等待另一个服务来响应.

任何人都知道拦截方法调用方法?有一些方法来利用TransparentProxy / Virtual Proxy? ;)ServicedComponent?我希望这样尽可能少的开销;)

解决方法

如何使用羊排?

我的意思是,你为什么不创建一些队列,并以类似方式处理它们

while (!queue.Empty) 
{
    Action action = queue.Pop();
    action(); // this calls your action
}

您可以简单地添加操作:

Queue.Add( ()=>{  /* any code you wish here */})

这只是一个提示,我不知道是否有一些Queue类,但是自己创建一个(和threadsafe!)应该是相当直接的.

解决方法可能(应该)更明智,但主要的是在那里.如果你想咨询,给我写信

Pz,TaskConnect开发人员

猜你在找的C#相关文章