Rescuing indicates that the exception is expected.  Ideally, any other exception would not be silently swallowed, because right now there is a chance of silent failure.  Addressing that is a separate issue though.

My real preference would be not to rely on exceptions for flow control at all, if that is possible.  And also not to have exceptions silently kill threads, even if that is the expected behavior.