title: Exceptions and cancelling
body: <p>This might be a bit of a stupid question but it has been bugging me so here goes </p>
  
  <p>I know that the normal advice is that Exceptions are only meant to be used in exceptional circumstances but I also read people advocating to use exceptions when a method fails to fulfil its contract</p>
  
  <p>Cancellation seems to me sit in a bit of a grey area between these two cases</p>
  
  <p>Without exceptions if your class has a lot of cancelable actions your code ends up back checking error codes all over the place</p>
  
  <p>Can cancelling be considered exceptional in this context?</p>