Пример #1
0
def startLoop():
    """
    Use nested asyncio event loop for Jupyter notebooks.

    This is not needed anymore in Jupyter versions 5 or higher.
    """
    def _ipython_loop_asyncio(kernel):
        """Use asyncio event loop for the given IPython kernel."""
        loop = asyncio.get_event_loop()

        def kernel_handler():
            kernel.do_one_iteration()
            loop.call_later(kernel._poll_interval, kernel_handler)

        loop.call_soon(kernel_handler)
        try:
            if not loop.is_running():
                loop.run_forever()
        finally:
            if not loop.is_running():
                loop.run_until_complete(loop.shutdown_asyncgens())
                loop.close()

    patchAsyncio()
    loop = asyncio.get_event_loop()
    if not loop.is_running():
        from ipykernel.eventloops import register_integration, enable_gui
        register_integration('asyncio')(_ipython_loop_asyncio)
        enable_gui('asyncio')
Пример #2
0
def startLoop():
    """
    Use asyncio event loop for Jupyter notebooks.
    """
    patchAsyncio()
    from ipykernel.eventloops import register_integration, enable_gui

    register_integration('asyncio')(_ipython_loop_asyncio)
    enable_gui('asyncio')
Пример #3
0
def startLoop():
    """
    Use asyncio event loop for Jupyter notebooks.
    """
    patchAsyncio()
    loop = asyncio.get_event_loop()
    if not loop.is_running():
        from ipykernel.eventloops import register_integration, enable_gui
        register_integration('asyncio')(_ipython_loop_asyncio)
        enable_gui('asyncio')
Пример #4
0
def enable_jupyter():
    ''' Set up Jupyter event loop integration. '''
    from ipykernel.eventloops import register_integration

    def loop_asyncio(kernel):
        loop = asyncio.get_event_loop()

        def kernel_handler():
            loop.call_soon(kernel.do_one_iteration)
            loop.call_later(kernel._poll_interval, kernel_handler)

        loop.call_soon(kernel_handler)

        try:
            if not loop.is_running():
                loop.run_forever()
        finally:
            loop.run_until_complete(loop.shutdown_asyncgens())
            loop.close()

    register_integration(loop_asyncio, 'asyncio')