So che questo è stato discusso anche su altri argomenti, quello che sto chiedendo è esattamente il titolo di questa domanda.Delphi - try finally block è garantito dal compilatore per essere eseguito correttamente?
C'è un tale caso quando try/finally finalmente non verrà eseguito?
try
//some error here
finally
//code that MUST be executed
end;
Non sto parlando di come try..except/fine devono essere utilizzati blocchi, sto solo chiedendo se questo possa accadere.
LE: Applicazione.Terminare/scollegare il computer in casi particolari.
Il compilatore non offre alcuna garanzia oltre la fine del mondo o del PC. Qualunque cosa venga prima. Ma in tutti i casi in cui è importante, cioè quando un blocco finally può ancora fare qualcosa di utile, verrà eseguito. –
stavo guardando questa domanda http://stackoverflow.com/questions/3484353/is-there-such-case-when-in-try-finally-block-the-finally-wont-be-executed - sembra che Gli sviluppatori Java non pensano ai wormhole/alla fine del mondo/ecc. Devo ammettere che gli sviluppatori Delphi hanno il senso dell'umorismo – RBA
non in Win64 anche se –