Подтвердить что ты не робот

Заменить текущий процесс вызовом подпроцесса?

В python есть способ вызвать новый процесс, передать ему тот же контекст, как стандартные потоки ввода-вывода, закрыть текущий процесс и дать управление вызванному процессу? Это эффективно заменит процесс.

У меня есть программа, поведение которой я хочу повторить. Тем не менее, он использует стороннюю библиотеку, и кажется, что единственный способ, которым я могу действительно убивать потоки, вызываемые этой библиотекой, - это выйти из моего процесса python.

Кроме того, похоже, что это может помочь управлять памятью.

4b9b3361

Ответ 1

Вам может быть интересно os.execv() и друзья:

Все эти функции выполняют новую программу, заменяя текущий обработать; они не возвращаются. В Unix загружается новый исполняемый файл в текущий процесс и будет иметь тот же идентификатор процесса, что и вызывающий абонент. Ошибки будут отображаться как исключения OSError.