On Friday, 8 March 2013 at 03:22:46 UTC, Walter Bright wrote:
On 3/7/2013 6:18 PM, Daniel Murphy wrote:
"Walter Bright" <[email protected]> wrote in message
news:[email protected]...
On 1/2/2012 11:20 AM, Martin Nowak wrote:
- Libraries might not be unloaded as long as GC collected class
instances
still exist because
    finalization fails otherwise.

D doesn't guarantee that finalizers will run on GC allocated objects.
Therefore, when unloading a dll:

1. run a gc collection
2. for all objects remaining on the heap
if they have a finalizer and that finalizer points into the dll
code
            mark them as not having a finalizer

What if their vtbl points into the dll code?

What about delegates or function pointers that point there?

These are problems with *any* dynamic dll code. The answer is to tell the user "don't do that".

That is completely wrong.

Reply via email to