[fpc-pascal] try..finally vs interfaces performance

Michael Van Canneyt michael at freepascal.org
Thu Apr 14 10:50:22 CEST 2016

On Thu, 14 Apr 2016, Mazola Winstrol wrote:

> Recently i did some maintenance in a code of a colleague. I realized that
> he designed several classes with interface support so he do not need to
> protect the code blocks with try..finally to ensure that the instances are
> released from memory.
> Theoretically, which solution has higher performance? The traditional
> approach (code protected try..finally) or classes with interfaces (no need
> to protect the code. by otherside, classes with interfaces support have
> lock operations)?

It should be exactly the same. 
As soon as interfaces are used the compiler inserts an implicit try...finally in a procedure.
You can see this if you step through the code with GDB, the execution point
will jump to the end of the procedure and then back to the beginning...


More information about the fpc-pascal mailing list