This is another one of those cases where the name of the function doesn't seem to describe what it does. I don't like that.
I also don't understand the use of 'tsk' - what's wrong with 'task'?
And what would cause one of those exceptions to be raised? Shouldn't there be better ways of error handling?