Previously, it was possible to run out of threads in
a fixed thread pool, and this could cause an indefinite
deadlock.
With this change, the deadlock is detected causing the
current message to fail, but freeing up the stuck
threads.
This was only seen with very small thread pools but
the potential was there for the condition to occur
under extreme conditions.
INT-2419 Deprecate poolSize Property
INT-2419 Polishing
Add note about OOM possibility now that an
unbounded task executor is used by default.