I have an Arduino Uno (awesome little device!). It has two interrupts; let’s call them 0 and 1. I attach a handler to interrupt 0 and a different one to interrupt 1, using attachInterrupt() : http://www.arduino.cc/en/Reference/AttachInterrupt.
Interrupt 0 is triggered and it calls its handler, which does some number crunching. If interrupt 0‘s handler is still executing when interrupt 1 is triggered, what will happen?
Will interrupt 1 interrupt interrupt 0, or will interrupt 1 wait until interrupt 0‘s handler is done executing?
Please note that this question specifically relates to Arduino.
On Arduino (aka AVR) hardware, nested interrupts don’t happen unless you intentionally create the conditions to allow it to happen.
From avr-lib:
(source: http://linux.die.net/man/3/avr_interrupts )