3 ms·
Yeah this is great. I'm really looking forward to detailed docs and explanations of some of the more low level and not-so-publicly understood parts. For instan
by MichaelGG 12y ago
Yeah this is great. I'm really looking forward to detailed docs and explanations of some of the more low level and not-so-publicly understood parts.
For instance, AFAICT, the whole double locking initialization question doesn't have a sold public answer. It's unsure that "myfield = new Foo()" is totally safe if the constructor throws. Obviously that'd be a huge flaw if not safe, but even top C# experts don't seem to be sure. With a fully open source CLR and docs, we should be able to figure this stuff out, rather than finding a few things of blog posts from 2004 and guessing.
We could also learn why some things are the way they are. For instance, why can you lock (Monitor) on every object? The syncblock on each object can't be free, so why is this encoded into each object (or even available at all), versus dedicated sync objects (which are what gets used in practice, anyways).
And maybe someone will provide much needed enhancements, like a way to effectively use the stack when safe. Or maybe some research projects will add advanced type features, which spark the way forward into the actual implementation.
I'm very much looking forward to this and really hope it marks a new era beyond hassle-free use on Linux.