adjust queue depth warnings to emit when all threads are busy #243
The main issue is that it would warn if you submitted several tasks in a row (like a web browser does) and you have available threads to process them, they just haven't switched over to grab them yet. This was causing a lot of false positive warnings. So this change starts tracking the number of idle threads and only warns if all threads are busy. I only just realized while typing this that there is one uncovered case right now where it's possible to submit more tasks than can be handled but no threads are busy and so no warning will be emitted. We should check the queue size and compare it to the number of idle threads.