C# AppDomain如何在承载.NET组件的navite应用程序中初始化

C# AppDomain如何在承载.NET组件的navite应用程序中初始化,c#,.net,windows,initialization,C#,.net,Windows,Initialization,我们有一些.NET类作为COM组件公开。客户有一个服务,它利用多线程C++应用程序中的COM组件。通常情况下工作正常,但在某些情况下,我们会看到在此环境中将请求排队到System.Threading.Threadpool上的问题。基本上,当我们使用System.Threading.ThreadPool.QueueUserWorkItem对用户的工作进行排队时,我们会收到一个false,即使在任何时候同时进行的请求不超过15-20个。 这项服务运行在四核服务器上,并没有任何严重的资源紧张。 在.N

我们有一些.NET类作为COM组件公开。客户有一个服务,它利用多线程C++应用程序中的COM组件。通常情况下工作正常,但在某些情况下,我们会看到在此环境中将请求排队到System.Threading.Threadpool上的问题。基本上,当我们使用
System.Threading.ThreadPool.QueueUserWorkItem
对用户的工作进行排队时,我们会收到一个false,即使在任何时候同时进行的请求不超过15-20个。 这项服务运行在四核服务器上,并没有任何严重的资源紧张。 在.NETCOM组件中,我们将一些web服务调用排队,因为我们不想在这些调用进行时耽搁整个处理序列(它们基本上是激发和遗忘类型的任务)

所以我想知道的是,是否有人了解应用程序域是如何从这样的环境中初始化的,这样我就可以尝试并开始跟踪这个问题

问候


Noel.

返回值的文档说明:

true如果方法成功排队;如果工作项无法排队,则引发


这似乎不允许错误返回。因此,您可以花时间与.NET Reflector一起了解此方法的错误含义,或者与Microsoft交谈(可能存在文档或实现错误)。如果您选择后一种方法,请尽可能缩短重新创建时间。

对于.NET的3.5和4.0版来说,这是正确的。这个COM互操作层是在.NET2.0中开发的,它返回true或false。@Bigtoe:我检查了V3.5。。。这一次,这还不够。