TimeoutException using getCause() - doesn't work because they are from different threads