I'm working in cloud software development and there are a lot of times where I simply cannot do the task that I was assigned at the moment. My solution is to switch to the following task, and alternate when my questions get answered. These intervals range anywhere from 5 to 120 minutes.
Do you think it's bad to switch between tasks this way, would you even call it multitasking? I don't enjoy working this way, my mind is constantly decluttering. But it's also unnerving to just spend up to 2 hours waiting for my supervisor's approval, so I'm at loss.
https://en.wikipedia.org/wiki/Kanban_(development)
It might be efficient to have 2 or 3 tasks "in progress" because, as you say, you are blocked on one and can't move forward. It is not efficient to add another, and another, and another. That is, 1 task may be too small but you need a hard limit on the size of your queue.
If for instance you are always waiting for things to build it makes sense to have one activity (reading a particular book) than to pick a fresh distraction each time. Personally there are times where if I don't take a break and find some distraction I get really uncomfortable and I can't pay attention, but it has to be within bounds.
Always have a list of things to work on, sorted in priority order. When you get blocked on one, move to the next. Always know what the next step is for your top N items so when you switch there's less time getting ramped up.
"Bad" multitasking is when you're listening to a podcast while coding, or web-browsing while in a meeting. The brain sucks at that, and one of those things will suffer attention loss.
To help with context switching, try to collect small tasks together so that you're either working on big things (30-120min) or a bunch of little things (5-15min each, but 30-120min together).
For the small tasks, pick a time that that you're less productive (end of day? first thing in the morning) and/or do them immediately when assigned if you're between tasks. This is part of the Getting Things Done (GTD) strategy, where small tasks should never make it onto your todo list - just do them.
Maybe it's something that you should discuss with your team leader? Obviously depends on your specific situation, but if you can't spend a few hours focusing deeper on a single project, it seems to me it's more of a management fault.
I'd probably bring this up as "Hey, can you help me figure out the best approach here? I often get stuck waiting for approval. I switch to next thing when that happens, but it requires lots of context switching. Think we can greenlight some things in advance or set some other structure so I can work more effectively?"
Modern agile practices tend to get this wrong by assigning you multiple items per iteration rather than use a monotask approach where you take one item all the way to completion or get blocked to then pickup another from the backlog.
Kanban is the closest model to this given you can only take one sticky note back to your desk while having a "work in progress" limit per iteration.
Modern scrum in my experience is a disaster because of what I described above.
There's a tradeoff between wall time (start vs end time) and work time (time spent on a specific task, not counting other work).
Some level of multitasking increases throughput substantially with a minimal increase in wall time. This is ideal. Too much or too little creates waste.