I have some code here that works as expected when I install it / run it on my own computer, Windows 7, but when I run it on other servers (2003 and 2008) it does not. The co
Sometimes this kind of behaviour is an indication of an overloaded ThreadPool.
Seeing as these are long running/blocking tasks, they should not be scheduled to run in the ThreadPool, which is where Task.Factory.StartNew will be sending them using the default TaskScheduler.
IMO, Task.Factory.StartNew is probably not best suited to this, and you'd be better off spinning up your own threads to run these loops.
ThreadStart action=()=>{
//do your thing
};
Thread thread=new Thread(action){IsBackground=true};
thread.Start();