I agree, but the other choice is to have traditional threads of execution that block. This simple strategy has delivered more successful projects than any other.