Actually you should start several tasks at once, because there is almost always something blocking one of your tasks (pending design decision, dependencies to other code/coders).
When I was a mechanic, this is how I differentiated myself from most of the other techs; multi-tasking with a priority queue. Waiting for approval? Stick that car outside and grab another. Parts wont be in til Tuesday? Stick it outside and grab another. It wasn't uncommon to have 6-7 cars in my daily queue in various states of repair and approval.
I haven't really run into this so much as a developer, though largely because I don't really work in an environment where there's a dozen things going on at once. At best, I'd say I can tackle managerial tasks or discovery processes while waiting for various approvals or decisions.