<p dir="ltr">Hi Sven, </p>
<p dir="ltr">Can you comment on how are you going to handle the case of TInterfacedObject and descendants? Are you going to use the same Addref & Release method ? How can you guarantee that the same counter will be updated in case of IUnknown implementations that introduce their own refcount variable (possibly with different name)? </p>
<p dir="ltr">Are you going to check that the class is already destroyed (because the arc has killed the instance) on IInterface.Release so that we should not get access violations on scenarios that mix ref counted classes and interfaces ?</p>
<p dir="ltr">Thanks for your time and efforts,<br>
Chriss</p>
<div class="gmail_quote">Στις 25 Σεπ 2014 4:14 μ.μ., ο χρήστης "Sven Barth" <<a href="mailto:pascaldragon@googlemail.com">pascaldragon@googlemail.com</a>> έγραψε:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p>Am 25.09.2014 11:59 schrieb "Michael Schnell" <<a href="mailto:mschnell@lumino.de" target="_blank">mschnell@lumino.de</a>>:<br>
><br>
> On 09/22/2014 08:37 PM, Boian Mitov wrote:<br>
>><br>
>> Honestly if you don’t know what you are doing when using ARC, I doubt a bit, you really know what you are doing otherwise either ;-) .<br>
><br>
> Ref counted strings are no problem with any (normal) use of same.<br>
><br>
> In this thread you find an example describing how ARC Objects easily can impose memory leaks.</p>
<p>Not really. The object instances themselves won't create memory leaks, because with strings you don't get them either. The only problems are typical "not threadsafe" problems of the classes themselves and there ARC won't help you anyway as this is the programmer's job to ensure.<br>
ARC objects will only be destroyed when the last reference to them has gone out of scope. If there is still a reference, then there's still the object.</p>
<p>Regards,<br>
Sven</p>
<br>_______________________________________________<br>
fpc-devel maillist  -  <a href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a><br>
<a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel" target="_blank">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel</a><br>
<br></blockquote></div>