TGViewer
Unity: Всё, что вы не знали о разработке Unity: Всё, что вы не знали о разработке @unsafecsharp · 1.74K subscribers
Post #233 2.52K
Статические лямбды

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

Видимо, разработчики шарпа тоже решили исправить ситуацию и добавили слово static к определению лямбды:


Method(static () => …);


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

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

#basics #staticlambda
Telegram Unity: Всё, что вы не знали о разработке Немного про аллокации и кэш. Самый простой пример аллокаций - это замыкание. Тут остановимся подробнее. Где могут скрываться аллокации, например, в такой конструкции: list.Where(x => x > 10).ToArray() Очевидно, что при вызове ToArray будет создан массив.…
  • 🔥 29
  • 👍 15
  • ❤ 2
More from @unsafecsharp
  1. Mar 2, 2026Век живи - век учись Я вот только сегодня узнал, что оказывается можно писать не только та…
  2. Feb 10, 2026Overlay У юнити, начиная с 2022.2, появилась возможность рисовать свои окна в SceneView, п…
  3. Dec 20, 2025Удобное API Вы наверняка сталкивались с такой проблемой: void Method<T>(System.Action<T> c…
  4. Dec 7, 2025Простые лайфхаки Часто встречаю в разных проектах подобные конструкции (на самом деле обыч…
  5. Nov 18, 2025Довольно интересная задачка попалась на собеседовании в гугле: Есть матрица (массив массив…
  6. Oct 12, 2025Unity.Profiling.IgnoredByDeepProfilerAttribute Аттрибут, который спасет вам время, если у…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →