Ideas for runtime loading of shared libraries.
deadalnix
deadalnix at gmail.com
Fri Mar 8 02:18:32 PST 2013
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" <newshound2 at digitalmars.com> wrote in message
>> news:khban1$1lm2$1 at digitalmars.com...
>>> 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.
More information about the Digitalmars-d
mailing list