timekiller

It lets call any function with a timeout


Keywords
timekiller
License
MIT
Install
pip install timekiller==0.0.3

Documentation

pythonversions License

Timekiller

It lets call any function with a timeout!

Install

pip install timekiller

Link pypi: https://pypi.python.org/pypi/timekiller

Example

Call function

import timekiller
import time


def long_function(foo, bar):
    while True:
        time.sleep(10)
        print(foo, bar)

# call(func, max_time, *args, **kwargs)
timekiller.call(long_function, 5, "woo", bar="Uhmm")


@timekiller.timeout(5)
def long_function_with_decorator(foo, bar)
    while True:
        time.sleep(10)
        print(foo, bar)

long_function_with_decorator("woo", "Uhmm")

Capture exception

import timekiller
import time


@timeout(1)
def long_function():
    try:
        time.sleep(10)
    except timekiller.TimeoutException:
        print("capture exception")

long_function()

TODO:

  • It works in main thread and processes (not work in threads)