AppDomains and shared Threadpool?

S

Shawn B.

Greetings,

I have an application that must load various modules. Each module must be
able to execute concurrently, so I'm spawning a thread and each thread hosts
its own AppDomain. I for various reasons, I must create a custom
threadpool. I would like to share that threadpool with each of the
AppDomains so the threads can be used/recycled between the AppDomains and
the threadpool can continue to be controlled/scheduled by the default
AppDomain/Process.

Is there a way to share the threadpool between each AppDomain? I'm hoping
this can be a pure C# solution. Ultimately, it is a Windows Service that
will load other modules that act as a service and function independantly.


Thanks,
Shawn
 
B

Brian Gideon

Greetings,

I have an application that must load various modules. Each module must be
able to execute concurrently, so I'm spawning a thread and each thread hosts
its own AppDomain. I for various reasons, I must create a custom
threadpool. I would like to share that threadpool with each of the
AppDomains so the threads can be used/recycled between the AppDomains and
the threadpool can continue to be controlled/scheduled by the default
AppDomain/Process.

Is there a way to share the threadpool between each AppDomain? I'm hoping
this can be a pure C# solution. Ultimately, it is a Windows Service that
will load other modules that act as a service and function independantly.

Thanks,
Shawn

Shawn,

You might consider Microsoft's Concurrency and Coordination Runtime
(CCR) or William Stacey's Port Concurrency Runtime (PCR).

http://msdn.microsoft.com/msdnmag/issues/06/09/concurrentaffairs/default.aspx
http://www.codeplex.com/PCR

Brian
 
B

Brian Gideon

CCR looks awesome but unfortunately our company will not license it for our
own internal use so it is immediately out of the question. I'll take a
closer look at PCR.

Thanks,
Shawn

Shawn,

And one disadvantage of the CCR is that you have to download the 45 MB
Robotics Studio. Honestly, I haven't used either one yet so I can't
comment too much on their capabilities.


Brian
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top