For me personally this is the ideal working scenario. With one condition: that I can choose when to work on what project for how many time. This gives me the opportunity to do the work I am in the mood for!
For example, I have 2 projects to work on, one is new and one is old.
I start in the morning on the most recent project, because in the morning I am the most fresh in my mind, and I am highly productive. Somewhere after lunch I get stuck in a very tough problem to solve. After trying to come up with a solution for an hour, I am losing my concentration. Now it is ideal to move this forward to the next day, so I can look at it fresh, with new energy. The remaining time of the day can be filled with fixing easy bugs at the old project.
This is for me the most productive way of working, the flexibility to choose between different types of work depending on my mood, level of energy and concentration.
As other questions point out, it can also be counter-productive, but I think this mainly depends on the condition I pose at the start of my answer.
Bottom line is, you have to figure out what works best for you. Maybe you are really good at switching between tasks, which gives you a benefit above other developers. If you are not good at switching, try to minimize the switching by planning your work very carefully.
It all depends on what you are good at, and when you figure that out, try to adapt your working methods towards that.