Loading two runtimes in the same process is not something mono was designed to. You might encounter all<div>sort of issues when doing so. </div><div>You'll have to call all mono functions using function pointers and hope it works as expected.</div>
<div><br></div><div>Multiple GCs in the same process will be racy and you might end up getting all sort of crash deadlocks.</div><div><br></div><div>Good luck.</div><div><br></div><div><br><div class="gmail_quote">On Tue, May 22, 2012 at 11:27 AM, Dimitri Kirsanoff <span dir="ltr"><<a href="mailto:dimitri.kirsanoff@gmail.com" target="_blank">dimitri.kirsanoff@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><br><br></div><div>I want to initialize different mono run time (different version of mono like 2.8, 2.11)  in a single process.</div>
<div>One application package is using mono-2.8 run time and other application is using mono-2.11 run time.</div>
<div><br></div><div><br></div><div>I am trying to initialize mono two times for two different versions, i.e. two different versions of the library.</div><div>To try that I found that getting dlsym function pointers from sharedobject and calling function pointer to "mono_jit_init" may make it work.</div>

<div><br></div><div>But here scenario seems to be bit different, as I need to initialize mono library for two different versions in same process</div><div><br></div><div><br></div><div>The call hierarchy of call is as following </div>

<div><br></div><div>My_Application</div><div>      |</div><div>      |</div><div>      |</div><div>     \/</div><div>libraryInterfaceToMono.so</div><div>      |</div><div>      |</div><div>      |</div><div>     \/</div>
<div>
libmono-2.so (alternately for 2.8 and 2.11)</div><div><br></div><div><br></div><div>Using my application I am initializing monoruntime share objects using mono_jit_init for version 2.11, but there is another version 2.8 for that another mono_jit_init call is needed. </div>

<div>For calling mono_jit_init I am using dlsym for mono_jit_init. I want to know can I do it for two different versions in one process.</div><div><br></div><div>Can I use mno_jit_init call twice so that I can initialize two versions ( I am using 2.8 and 2.11 ) alternately?</div>

<div><br></div><div><br></div><div>Instead of mono_jit_cleanup I am using mono_runtime_unload api as mono_jit_cleanup calling from a function is giving me abrupt crashes. </div>
<br>_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
<br></blockquote></div><br></div>