##// END OF EJS Templates
Backport PR #8271: Allow to set same mode as existing if load fails....
Backport PR #8271: Allow to set same mode as existing if load fails. Setting the mode many times in a row, would fail to actually set the mode if it was failing to load the mode the first time. The prevent the above behavior by falling back **explicitly** to 'null' if mode does not exist yet, or can't be loaded. ...

File last commit:

r16113:87737521
r21463:d66c4462
Show More
inprocess_terminal.py
31 lines | 833 B | text/x-python | PythonLexer
from __future__ import print_function
import os
from IPython.kernel.inprocess import InProcessKernelManager
from IPython.terminal.console.interactiveshell import ZMQTerminalInteractiveShell
def print_process_id():
print('Process ID is:', os.getpid())
def main():
print_process_id()
# Create an in-process kernel
# >>> print_process_id()
# will print the same process ID as the main process
kernel_manager = InProcessKernelManager()
kernel_manager.start_kernel()
kernel = kernel_manager.kernel
kernel.gui = 'qt4'
kernel.shell.push({'foo': 43, 'print_process_id': print_process_id})
client = kernel_manager.client()
client.start_channels()
shell = ZMQTerminalInteractiveShell(manager=kernel_manager, client=client)
shell.mainloop()
if __name__ == '__main__':
main()