Преднамеренная бесконечная рекурсия, функции без возврата

Бесконечная рекурсия чаще всего нежелательна, а когда это случается, это обычно вызывает переполнение стека или сбои в работе.

Но ради теории и из простого любопытства я думал, можно ли намеренно создать настоящую бесконечную рекурсию.

Работа в C ++ и C, где стек обычно увеличивается при каждом вызове функции, и каждая функция возвращает и выталкивает часть стека, которую она обрабатывала.

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

Я думаю не только о простых циклах как о возможном использовании для этого, если таковые будут. Петли обычно хорошо справляются со своей задачей. Но что, если бы вы использовали его для отправки сигналов через сеть узлов, которые продолжаются бесконечно в своих собственных потоках процессов, пока не достигнут определенного состояния. Это могло быть инструментом, который можно было бы использовать для некоторых проблем.

Помните, я на самом деле не спрашиваю, практично ли это, только если это возможно. Для науки!

7
задан Michael0x2a 8 December 2013 в 19:04
поделиться