[fpc-devel] Suggestion: reference counted objects
Giuliano Colla
giuliano.colla at fastwebnet.it
Sat Sep 20 20:33:40 CEST 2014
Il 20/09/2014 19:20, Boian Mitov ha scritto:
> Hi Chriss,
> Personally I favor reference counted objects. While there are
> interfaces as you pointed, and in Delphi you can even use smart
> pointers now, there is still a lot of cases when you need to use
> objects, and have to manually free them.
> In single threaded environment that is not such an issue, but in
> parallel and heavily multithreaded environments, reference counting is
> a life saver.
Can you explain how reference counting can be safely implemented in a
parallel multithreaded environment, without heavily affecting performance?
A mere increment or decrement of count means to get a lock and to
release a lock on that object. Application code can know what is thread
safe and what is not, and use lock only when appropriate.
A general mechanism to be reliable should take into account all
possibilities. If it does, it will block threads even when unnecessary.
If it doesn't, it will be unsafe.
What do I miss?
Giuliano
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20140920/8a872117/attachment.html>
More information about the fpc-devel
mailing list