Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 2

Почему ScopedValue сравнивается с ThreadLocal? ThreadLocal по-сути - глобальная переменная в пределах потока. Через нее можно передавать значение в методы, минуя параметры (всякие кеши).

ScopedValue действует ограниченное время в пределах одного блока. Действие смахивает на

        String v = "banana";
        System.out.println(v);
        {
            String v = "apple"; //ERROR: variable v is already defined in method main(java.lang.String[])
            System.out.println(v);
        }
        System.out.println(v);

В отличии от C++, такой код не скомпилируется. Поэтому, видимо, наворотили таких костылей с лямбдами.

Как будет работать f8 в идее с такими конструкциями? Будет курсор по f8 заходить в лямбду и шагать дальше?

Хотя бы потому что сами разработчики ScopedValue называют это заменой ThreadLocal.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий