[pyar] Timeouts para codigo de terceras partes: PyThreadState_SetAsyncExc?

Alejandro Santos listas en alejolp.com
Lun Ene 5 19:36:01 ART 2015


2015-01-05 20:58 GMT+01:00 Andres Riancho <andres.riancho en gmail.com>:
>
>     La pregunta entonces es... que otras soluciones tengo a este problema?
>

import multiprocessing
import time

def exec_with_timeout(f, args, timeout):
    p = multiprocessing.Process(target=f, args=args)
    p.start()
    p.join(timeout)
    if p.is_alive():
        p.terminate()

def bad_func(t):
    while True:
        time.sleep(t)

exec_with_timeout(bad_func, (5.0, ), 0.1)


-- 
Alejandro Santos


More information about the pyar mailing list