Agreed; it's nice that it informs you whether it succeeded, but it could accomplish the same by returning a boolean. The way I see it, exceptions have two purposes: to provide details about the error, and to provide a stack trace. Since InterruptedExceptions or whatever they're using are not useful for either case, they shouldn't exist.