title: Detect when TaskScheduler 'deadlocks' attempting to Run a thread-based Task
body: <p>Given a situation where N long-running tasks are created on TaskScheduler.Default (using the ThreadPool) with a maximum concurrency of N.</p>
  
  <p>However, the completion of these N tasks are dependent upon another task which has not yet started; this new task cannot be run because the N existing tasks are running, each consuming their own thread.</p>
  
  <p>Is - and if not, how can - this form of 'deadlock' situation reported? For example, is there a callback which occurs when a task <em>cannot</em> be started (within some amount of time)?</p>