On Sun, Mar 25, 2012 at 10:27 AM, Bennie Kloosteman <[email protected]>wrote:
> C# has app domains for this basically light weight processes . > That's the theory. Problem is that (1) the app domain isolation story never actually worked (2) support for app domains within Microsoft isn't taken very seriously, and (3) firing off a new app domain is not a cheap operation, because isolation requires a lot of new initialization. I mean all the code can be shared since it read only so you only need a new > heap/ memory region for the GC the cost of that cant be that high. > Yes, all of the code can be shared. If I recall the study correctly, the 1.5M instructions required to get to the first bytecode of main assumes ahead-of-time compilation and binary code sharing. *All* of that cost is the cost of initializing the heap. And it turns out that (for various reasons) you can't just pickle a heap and reload it. > Isnt the C++ equivalent to a guaranteed state a process restart which is > going to cost a few cycles as well? > Yes. The overhead is much less that for Java or C# because of the poor structural designs of the Java/C# core libraries. It would still be far too high, and of course no safety would be guaranteed in C++, which is why this is not done. Jonathan
_______________________________________________ bitc-dev mailing list [email protected] http://www.coyotos.org/mailman/listinfo/bitc-dev
