The execute* methods all return dojo/Deferred so you might be able to call cancel() on the deferred object...
deferred object has the cancel() method, but it's not related to the query callback function
Encounter the same issue. If the query takes too long, we really want to cancel it. How to do it?