Stands back, puts on flack jacket and awaits comments.
I’ll add to AWOL’s excellent list.
as long as they understand what they are doing.
That, of course, is the rub. Most people do NOT understand how interrupts work, how they should be handled, how they should be kept as short as possible, etc.
The doorbell example is classic. All the the interrupt handler should do is answer the door, see that someone is there, and notify, by some means, the responsible party to deal with the person at the door.
Of course, sometimes, in the case of serial data arriving, the postman rang the bell and held out a package. The postman, in this case, knows enough to not hang around having a 20 minute conversation. So, the interrupt handler simply needs to accept the package and put it in the proper place.
But, far too often, we see people that want to do just what AWOL describes in his first example, and don’t understand that the process automatically returns them to reading the paper. They think that after processing the interrupt that they should be able to go have a beer.
Interrupts have their place. When you need to use an interrupt, generally I think that you know that you have that need. If you don’t KNOW that you have that need, you probably don’t have it.