Don't know why you think a benefit of subclassing is 'isRunning, isFinished, sleep, msleep are still available'. They are of course still available on the associated QThread!

The benefit of not sub-classing is that people dont get confused about what threads the signals/slots are (executed) in.