elizarov


Блог Романа Елизарова


Previous Entry Share Next Entry
Третий день JavaOne
elizarov
Некоторые подробности про New I/O в Java 7 - JSR 203. Обещали закрыть практически все мыслимые проблемы и недоработки ввода-вывода в Java. Можно будет получать нотификации об изменениях файлов, работать с символическими ссылками, безопасно ходить по дереву каталогов, эффективно копировать и перемещать файлы (с копированием прав при желании), работать напрямую с правами файлов и другими специфичными для платформы атрибутами файлов. Можно будет писать свои реализации файловой системы. На сетевом уровне обещают перевести все операции с сокетами на channels, то есть все операции (включая доступ к нестандартным параметрам соединения) можно будет делать без обращения к классу Socket.

The Garbage First Garbage Collector (aka G1) -- единственный доклад (по признаю авторов) в названии которого 50% мусора :) Он ждет нас в Java 7 как замена CMS. Очень, очень грамотный алгоритм. Будем надеятся, что они смогут довести до ума реализацию (там еще есть над чем поработать). Доклад проводился совместно с CBOE -- они один из крупнейших клиентов Sun, а вся биржевая система CBOE написана на Java. Потрясает воображение их тестовая система, на которой они и откатывают различные нововведения типа новых алгоритмов GC. Собственно, внутри Sun разработчики проводят только различные микро-тесты и синтетические тесты, в то время как сотрудничество с CBOE позволяет им прогонять свои алгоритмы на реальных системах.

Cliff Click упростил доказательство своей революционной реализации ConcurrentHashMap, которая обгоняет последний на 10% даже на машинах с малым числом процессоров (16-32), а на машинах с количеством процессоров приближающемся к 1000 вообще не имеет равных, в силу того что алгоритм полностью Lock-Free. В этом году Cliff Click продемонстрировал как используя такой же подход написать параллельный Lock-Free BitSet, и "почти" FIFO очередь которая масштабируется на тысячи процессоров. Код доступен в SourceFourge как часть high-scale-lib.

  • 1
(Deleted comment)
Не совсем так, но появится. Метод сanRead() на java.io.File был всегда, только не было детально документировано что же именно он проверяет. Более того, через java.io.File каждое чтение атрибута это отдельное обращение к ФС. Обещают же возможность узнать сразу пачку нужных тебе атрибутов.

Изменение атрибутов это, естественно, действие которое сильно зависит от используемой ФС, но обещают поддержку всех наиболее распространенных схем -- DOS, Posix, NFS-ные ACL-и.

о! IO - это то, чего так сильно не хватало... А что-нибудь с календарём сделать у них там в планах нет?

Есть JSR 310 и не нулевая вероятность что он попадет в Java 7.

  • 1
?

Log in

No account? Create an account