<br><br><div class="gmail_quote">On Mon, Mar 18, 2013 at 10:29 PM, Marc Liyanage <span dir="ltr">&lt;<a href="mailto:marc@entropy.ch" target="_blank">marc@entropy.ch</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="HOEnZb"><div class="h5"><br>
When I launch IPython notebook, a new process is launched for the kernel. I was wondering if it&#39;s possible to prevent that and instead run the kernel in a new thread of the same process. I can use the C API and instantiate multiple Python environments if that helps.<br>


<br>
There are two reasons why I&#39;d like to avoid forking:<br>
<br>
1.) On OS X, the process gets killed if it is already multithreaded, and for a GUI app that&#39;s always the case<br>
2.) I&#39;d like to use the Objective-C bridge and let the Python code access Obj-C objects in the same process<br></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="HOEnZb"><div class="h5"><br>
Is this possible, or is IPython fundamentally based on fork/exec?<br></div></div></blockquote><div><br></div><div>You would definitely need to start a new Python, because there can only be one Kernel in a given Python environment.  I&#39;ve never thought about multiple Pythons in a single process - you would definitely have problems when users interrupt or restart kernels, since that&#39;s based on process signals.</div>

<div><br></div><div>My guess is that this is probably not going to work without significant restructuring of IPython, which is unlikely to happen.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="HOEnZb"><div class="h5">
<br>
<br>
_______________________________________________<br>
IPython-User mailing list<br>
<a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
</div></div></blockquote></div><br>