Parallel.For/Foreach threads reuse C#
<p>Is there a way to reuse threads used in consecuent calls of <code>Parallel.ForEach</code> loop? I am tring to do because I understand that thread creation can be costly.</p>

<p>Thats what i would like to do: </p>

<pre><code>var collection = CreateMyCollection()
var pool = CreateThreadPool()
for(int i =0 ; i&lt;1000 ; i++)
      Parallel.ForEach(pool, collection, (element) =&gt; Calculate(element, i))
</code></pre>

<p>Is it possible?</p>

<p>Note: I cannot parallize the external loop instead (hard dependancy between 'i's')</p>