title: C# Manual Threading
body: <p>Does anyone have any good resources that show creating an unlimited number of threads in C# WITHOUT using a ThreadPool?</p>
  
  <p>I realize one might question the architecture of a system with hundreds or thousands of threads, so let me explain the task in case the CPU/OS will make this effort moot.</p>
  
  <p>I have about 2500 URLs that I need to test.  Some of them are very slow: in excess of 10 seconds to respond.  In any event, network latency makes up about 99.99% of each operation.</p>
  
  <p>I'd like to test all 2500 urls as fast as possible.</p>
  
  <p>I wired up a test that tests each of them in their own thread.</p>
  
  <p>The problem is I'm using the ThreadPool and I think the default limit is 25, so that's no good.  I need to manage them manually.  Am I way out to lunch here?</p>
  
  <p>I realize the CPU/OS will probably also limit the number of concurrent threads per CPU, but I trust this limit is WAY higher than 25.</p>
  
  <p>Regarding architecture, I realize I may be locking up an entire box if I was to wire up 2 thousand HTTP threads, but this is an admin task that runs in isoloation and can take as many resources as are available.</p>
  
  <p>Thanks for your insights.</p>