Это немного сложно ![]()
Итак, код устанавливает лимит: максимальное количество сравнений, которое он может выполнить, прежде чем должен остановиться и сказать «это слишком сложно».
Как рассчитывается лимит?
- Он берёт суммарный размер двух текстов и умножает на 200. Для больших текстов лимит больше.
- Но есть жёсткий предел в 2 миллиона сравнений — независимо от размера текстов, он никогда не попытается выполнить больше этого числа.
Что происходит, когда лимит исчерпан?
- Код поднимает руку и говорит «я сдаюсь» — он выбрасывает ошибку (
DiffLimitExceeded), вместо того чтобы заставлять сервер работать несколько секунд или минут