The same is also true for teams. If a team starts working on the top story of a backlog and does not stop until that story is Done, and only then picks up another story, then I propose that that team will be faster (over the long term) and produce less bugs (over the long term). The idea is simple yet counter-intuitive.
Those that oppose this idea say that if you are "stuck" in some part of a Story you should leave it waiting for input (maybe from another team) and start working on another task coming back to the original task once it has been "unstuck".
Said this way people tend to believe that it becomes therefore more efficient to work on several tasks so that you are never "stopped and waiting" or waiting for a story to be ready before picking up the next, but rather always "producing". Common sense you would say? Well, I propose that, in this case common sense is wrong.
If you work on one task and then interrupt that task at some point you will be faced with the waste of context switching when you finally come back to the original task -- not to mention that you just broke the prioritization because presumably the first task had higher priority.
The world may not be ready, but if you are I encourage you and your team to experiment with "Kanban" or "Scrumban" or (as I like to call it) "Lean".
Whatever you do, always use your brain. There's no substitute for that.