[D-runtime] druntime should be a shared library/DLL

Brad Roberts braddr at puremagic.com
Wed Feb 6 16:42:38 PST 2013


On Wed, 6 Feb 2013, Walter Bright wrote:

> On 2/6/2013 3:23 PM, David Nadlinger wrote:
> > On Wed, Feb 6, 2013 at 11:15 PM, Walter Bright <walter at digitalmars.com>
> > wrote:
> > > This would go a long ways towards solving the dll issue, as then the gc
> > > and
> > > thread instances will automatically be shared.
> > Could you elaborate a bit?
> > 
> > As far as I can see, it would not change anything about the fact that
> > you need to be able to handle GC ranges from multiple images (static
> > data, TLS) that are added/removed dynamically.
> > 
> 
> The thread code has some global variables where it keeps track of all threads.
> With the static library approach, there are two sets of these variables, and
> two sets of code to deal with them. They will conflict with each other, and
> any attempt to make DLLs will have to have some mechanism to decide which one
> wins. With druntime itself as a DLL, this is not an issue.
> 
> The same problem with the gc.

I'm all for 'forcing the issue', but only if someone is stepping up to 
drive and own making it really work.  There's been a couple of really 
great volunteers pushing things forward slowly but surely.  If this 
suggestion is a conscious statement of "I'm (Walter) willing to help 
shepherd through the remaining issues and be an active participant in 
making it work well" then I'm highly in favor of it.  But if it's anything 
short of that then it's an empty suggestion, imho.  We can't just "go a 
long way" with things like this.  It's the accumulation of partly done 
work that drives people so nuts about D.

My 2 cents,
Brad



More information about the D-runtime mailing list