Мне нужно установить ограничение по времени для функции Python, которая использует некоторые многопроцессорные функции (я не знаю, имеет ли это значение). Примерно так:
function(a_list):
p1 = Process(a_list[0:len(a_list/2)])
p2 = Process(a_list[len(a_list)/2: len(a_list)])
//start and join p1, p2
Я осматриваю сеть и нашел декоратор тайм-аута, но он выглядит довольно сложно и многословно (я новичок в декораторах). Что бы я хотел, это простая вещь.
EDIT:
Я думаю, я сделал это слишком просто.
Моя программа перебирает вышеуказанную функцию и сохраняет результат в виде списка, подобного следующему:
while(something):
retval = function(some_list) # here I need the time out thing
# if function timed out then skip
ris_list.append(retval)