Vuvk,
тык
тык
Код
// By using tasks explcitly.
public static void DoTree<T>(Tree<T> tree, Action<T> action)
{
if (tree == null) return;
var left = Task.Factory.StartNew(() => DoTree(tree.Left, action));
var right = Task.Factory.StartNew(() => DoTree(tree.Right, action));
action(tree.Data);
try
{
Task.WaitAll(left, right);
}
catch (AggregateException )
{
//handle exceptions here
}
}
(код выше просто показывает как работает thread pool в C#)
пысы: попробуй все же использовать thread pool. Суть в том, что необходимое количество потоков УЖЕ создано и готово к обработке информации.