Perform an action before powering down?

Is there a way to have the Arduino do something before it powers off? Lets say its the Pro Mini running at 3.3v, and to estimate the something I need it to do requires 30ma for 250 milliseconds (also at the running 3.3v) along with what ever the Arduino requires. I can think of 2 possible methods.

1: Arduino controls its own power, more like how the power button on an ATX power supply on a computer just sends start/stop commands instead of actually killing the power. No idea if this is possible or how it would be done on an Arduino. If it is possible then how much power and for how long is not an issue, but I do want power to be completely off and not in some lower power sleep mode.

2: Put a capacitor on it that can hold just enough power to allow the Arduino to perform the action I want it to do along with a simple circuit that can detect when power is turned off. I'm thinking something that will push an interrupt to high, so I know I only have x amount of time before my capacitor is empty. Is this possible? I'm pretty sure this is possible but I don't know if the size of the capacitor makes this not practical, is there a simple way to estimate how many farads are required? Some help with the circuit too.

Any info about how to do this or projects where others have already done this would be helpful.

A supercap should be sufficient.

1F supercaps are cheap. Start at 3.3v, draw 0.03A for 250mS and the voltage on the supercap would be 3.25ish at that point. So you could go below 1F, even...

(1 amp for 1 second on a 1F cap will change voltage on cap by 1 volt)