Skip to main content

IPython magic to run jobs in background

Project description

ipython-bg

  1. Use %bg to run line in background
  2. Use %%bg to run cell in background
  3. Use %jobs to view all background jobs
  4. Use %kill to try to kill a thread - only works if thread runs python code

How to load extension

In [1]: %load_ext ipython_bg

%bg - run line in background

In [2]: %bg run_this_command_in_background = 1
[1] running in background

[job completed] run_this_command_...

%%bg - run cell in background

In [3]: %%bg 
   ...: run_this_cell_in_background = 1 
   ...: more_lines = "yes, more lines." 
   ...:  
   ...:

[2] running in background

[job completed] run_this_cell_in_...

%jobs - view all background jobs

In [4]: %jobs
jobs:
[1] start=22:49:50, code=run_this_command_..., completed, finished=22:49:50, took=0:0
[2] start=22:50:13, code=run_this_cell_in_..., completed, finished=22:50:13, took=0:0

In [5]: print(run_this_command_in_background, run_this_cell_in_background, more_lines)
1 1 yes, more lines.

%kill - try to kill a thread

In [6]: %%bg 
   ...: import time 
   ...: time.sleep(5) 
   ...: print("this won't be printed :(") 
   ...: time.sleep(100000) 
   ...:

[3] running in background

In [7]: %kill 3
[job killed] import time...
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/Users/drorspei/.pyenv/versions/3.6.10/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/Users/drorspei/.pyenv/versions/3.6.10/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/Users/drorspei/src/ipython-bg/ipython_bg/__init__.py", line 19, in runjob
    exec(code, ipython.user_ns)
  File "<string>", line 2, in <module>
KeyboardInterrupt

Project details


Release history Release notifications | RSS feed

This version

0.2

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipython-bg-0.2.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

ipython_bg-0.2-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file ipython-bg-0.2.tar.gz.

File metadata

  • Download URL: ipython-bg-0.2.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

File hashes

Hashes for ipython-bg-0.2.tar.gz
Algorithm Hash digest
SHA256 88c67bd3a2d6556a2b19d43ed078c79d722cf7805b3af30c4dd71b366d6ba603
MD5 281239a2061c3995568ca98e93a7e9fb
BLAKE2b-256 fed92b20dc374ba1a164ecfb34757216387425e00dccd574a16ea0d754a174a0

See more details on using hashes here.

File details

Details for the file ipython_bg-0.2-py3-none-any.whl.

File metadata

  • Download URL: ipython_bg-0.2-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.6.10

File hashes

Hashes for ipython_bg-0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6c269b438c05eda6d83fd0ee29602ebf5de3a6c7af10527500c367261a5eb795
MD5 dc416f0f32807f29bad3815088228ca0
BLAKE2b-256 f0cd5c76edf2f40816ca442e32d6348fd142c2dd94a59a29da2600c5b80d5549

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page