Dennis,<br><br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">No.  It&#39;s wxPython.  wxPython can be run in any thread you want as long as communication with the GUI methods occur from the same thread that the main loop is running.  We don&#39;t use the shell to call GUI methods.  We use the shell to call methods on a device to tune performance and settings (the device is thead safe.)<div class="im">
</div></blockquote><div><br>OK, this clarifies.  I thought wxPython *has* to be run in the main thread, but I guess not.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im"><br>
<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
* Are you uses IPython&#39;s threaded shells to integrate ipython with the GUI?  If not, can you better describe how the two are integrated.<br>
</blockquote>
<br></div>
No.  I specifically don&#39;t want -wthread because I don&#39;t want calls in the shell to block the GUI.  We have other threads doing heavy USB IO in the GUI and it needs to run without the commands in the shell blocking it.<br>

<br>
Example, I specifically want to be able to do something like this in the shell:<br>
<br>
while True: pass<br>
<br>
Then I want to be able to have the GUI run without being blocked.  When I see that my command might not be returning, ctrl-c the command in the shell, and have the GUI continue to run as if it didn&#39;t know what is going on.  I see why many people want commands in the shell run on the GUI thread and I know how IPython uses uses the hijacked GUI loops to execute the shell commands on the GUI thread but that doesn&#39;t suit my needs.<div class="im">
</div></blockquote><div class="im"><br>Definitely, you can&#39;t use the -wthread options. <br><br>
* Sometime very soon (like next week) we will be merging some new code into the ipython trunk that will have a much better way of doing GUI integration (it doesn&#39;t require threads).  While I haven&#39;t tested it with embedding, it should make these things much simpler.  Note:  this new stuff won&#39;t be in the upcoming 0.10 release.</div>
<div> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im"><br></div>
There may be something that helps but really the only issue I&#39;m having is when I close the app, my shell doesn&#39;t drop back to the prompt until I press Enter.  I don&#39;t think it&#39;s much related to the GUI thread situation.<br>
<font color="#888888">
</font></blockquote><div><br>The new stuff won&#39;t help you at all because the GUI and shell run in the same thread.<br><br>You problem might not be related to the GUI thread, but I do think it might be related to the GUI/shell interaction.  I say this because the code I sent you works just fine when there is no GUI around.  Is there any way you can debug this more to see where the shell is waiting on stdin?<br>
<br>Sorry I can&#39;t be of more help.<br><br>Cheers,<br><br>Brian<br><br><br></div></div>