← Все новости
Бенчмаркая проверки границ: фикс, который шёл 8 лет, и проверка, которая жива до сих пор

Бенчмаркая проверки границ: фикс, который шёл 8 лет, и проверка, которая жива до сих пор

Уважаемые читатели, в этой статье я хочу рассказать о проверках границ массива и представить свои выводы. Каждое обращение arr[i] обязано проверить индекс, иначе IndexOutOfRangeException — а JIT старается эти проверки убирать, когда может доказать, что выход за границы невозможен. Я взял несколько обычных циклов и посмотрел в машинный код на .net 8, 9, 10 и 11 одновременно. Результат разложился по версиям так, как я не ожидал.Будет три истории: Читать далее