The executor inside ThreadUtils is causing RejectedException from time to time. This would fail at different kind of jobs randomly, some of which might impact the message syncing functionality. This PR removes the usage of the executor and use coroutine's dispatcher where such rejection doesn't happen.
Description
The executor inside ThreadUtils is causing
RejectedException
from time to time. This would fail at different kind of jobs randomly, some of which might impact the message syncing functionality. This PR removes the usage of the executor and use coroutine's dispatcher where such rejection doesn't happen.