Как я могу получить текущую глубину стека интерпретатора Ruby? - PullRequest
0 голосов
/ 06 мая 2019

Я хочу получить глубину стека, узнать, как глубоко он уходит в рекурсивную функцию.

Я нашел Как узнать текущую глубину стека интерпретатора Python? this, иэто именно то, что я хочу, но это Python, и я не смог найти ничего подобного, когда гуглил «Ruby get stack stack глубина».

Что я хочу сделать, это примерно так:

def recursive_func(n)
   if n == 1
      return get_current_depth()
   end
   recursive_func(n - 1)
end

Что я могу использовать?

1 Ответ

3 голосов
/ 06 мая 2019

Вероятно, так с помощью caller:

caller.length

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...