Null check that shouldn't be needed

Thread names and threads should not be null. However, Thread.enumerate
does not ensure that it fills the array, so we must check for nulls.
Prevent dead locks.

If a call to doBindings resulted in something calling
addRunnableToQueue, a dead lock would occur. This prevents that from
happening, but allows for infinite loops. This is relatively uncommon,
so we should be fine.