Я и мой ёбаный кот на фоне ковра. Войти !bnw Сегодня Клубы
УНЯНЯ. У нас есть немножечко инфы об этом пользователе. Мы знаем, что он понаписал, порекомендовал и даже и то и другое сразу. А ещё у нас есть RSS.
Теги: Клубы:

В классе java.nio.file.Files присутствуют две статические функции для создания директорий:

createDirectory(Path, FileAttributes...)
createDirectories(Path, FileAttributes...)

Активным пользователям mkdir(1) даже не нужно читать доку чтобы знать особенности различия:
Первая создаёт одну папку и ругается если она уже есть.
Вторая создаёт все нужные папки и не ругается если папка уже есть.

В общем, мне было очень приятно обнаружить такую преемственность на уровне флага -p.

#N99UVY (0) / @hirthwork / 3324 дня назад

Мы обожаем self-descriptive имена у функций. Например, вот три строчки из декларации одного интерфейса:

    long intValue();
    double floatValue();
    String stringValue();
#QNEXRT (4) / @hirthwork / 3324 дня назад

пооптимизячил один класс. теперь вся jvm может схлопнуться с сегфолтом, если неправильно использовать класс в однопоточном приложении

#PCV7IS (0) / @hirthwork / 3324 дня назад

днище ебаное

Error Message: In a JIT-compiled Java method, a finally block is
not executed when:

1. A multi-type catch block is used to catch more than one type
of exceptions.

2. An exception is thrown from the try block that matches
anything but the first type in the multi-type catch.

3. An exception is thrown from the catch block. It can be a new
exception, or the caught (re-thrown) exception.

© http://www-01.ibm.com/support/docview.wss?uid=swg1IV68110

Оригинальный разбор полётов здесь:
https://www.ibm.com/developerworks/community/forums/html/topic?id=b660d423-abee-4d81-9a82-450824a26298&ps=25

#E3KYQA (12+1) / @hirthwork / 3326 дней назад

Это чувство, когда твой сраный JsonWriter сраные 200тысяч key-value пар общим размером в восемь сраных мегабайт пишет и кодирует из utf-16 в utf-8 целых 250 мс

#AFB7MS (2) / @hirthwork / 3337 дней назад

уж если собрался профилировать скорость, то будь добр -Xdebug из параметров запуска убрать
inb4: хули я тут удаляю

#ZRNA89 (3) / @hirthwork / 3337 дней назад

В джаве нельзя просто так взять и написать дженерик с такой вот сигнатурой:

<T> void f(List<T> list, Callback<? super List<? super T>> cb) {

Жава будет вопить про то что второй аргумент хуйня и шли б все нахуй http://ideone.com/1xQ7dC

Поебавшись некоторое время нашёл вот такой лайфхак:

<T, U extends T> void f(List<U> list, Callback<? super List<T>> cb) {

Который заебись компилится: http://ideone.com/WN1qui

В общем, не знаю кому из вас это может понадобится, но пользуйтесь на здоровье

#QSJV8V (2) / @hirthwork / 3341 день назад

tfw findbugs указывает тебе на ошибки в твоих же программах

#WHXLQP (0) / @hirthwork / 3350 дней назад

тимлид уходя с работы вскользь спросил, как я смотрю на переход с IBM JDK на Oracle JDK. чую, просрал IBM свои некогда охуительные гарбаж коллекторы

#YBRL0K (13) / @hirthwork / 3351 день назад

УИИИИИИ!!! IBM JDK 8!

#X27HXS (0) / @hirthwork / 3358 дней назад

эпичный пример квиксорта, который падает со StackOverflowError на отсортированном массиве: http://grepcode.com/file/repo1.maven.org$maven2@org.apache.pdfbox$pdfbox@1.8.8@org$apache$pdfbox$util$QuickSort.java#68

#XGPSUN (0) / @hirthwork / 3364 дня назад

опять import'ы перестали в 80 символов влезать

#E910Y9 (0) / @hirthwork / 3385 дней назад

Всё таки в плюсцах есть одна удобная штука по сравнению с жавой. Куда удобнее и короче писать

enterprise_object_factory factory(arg1, arg2, arg3);

чем

EnterpriseObjectFactory factory = new EnterpriseObjectFactory(arg1, arg2, arg3);

#IXISBE (4+1) / @hirthwork / 3388 дней назад

величайшей трагедией интерфейса Comparable является то, что в коллекции объектов реализующих этот интерфейс вовсе не гарантируется одинаковость реализации .compareTo(...) у всех объёктов коллекции. в этом плане использование внешнего компаратора куда меньше режет глаз истинным перфекционистам

#06S50X (4) / @hirthwork / 3409 дней назад

сидишь и обновляешь страницу http://www.ibm.com/developerworks/java/jdk/linux/download.html в надежде что появится Java 8

#CP52GQ (2) / @hirthwork / 3410 дней назад

вдогонку к #CN7EZY
восемь килобайт — предельный размер блока записи в FileOutputStream, который не требует аллокаций памяти. использоваться будет массив на стеке. если больше восьми килобайт, то перед вызовом GetByteArrayElements, сначала malloc'ом будет выделен блок памяти равный размеру массива

#NA7KSN (5) / @hirthwork / 3421 день назад

раньше я думал, что запись в Socket блоков данных больше 8KB приводит к большому оверхеду за счёт выделения временных DirectByteBuffer. Оказывается это не так, никаких магических 8KB нет в коде jvm. Независимо от размера блока будет вызываться Util.getTemporaryDirectBuffer(size) которые выдаст DirectByteBuffer нужного размера и при необходимости удалит первый попавшийся из своего ThreadLocal кэша, чтобы новый буфер в этот кэш положить.

#MRJHR0 (1) / @hirthwork / 3422 дня назад

twf наступаешь на багу в jvm. ладно бы это была безобидная бага, так ведь она RuntimeException заворачивает Error что убивает нить исполнения к хуям

#TREZ76 (2) / @hirthwork / 3426 дней назад

идемпотентность функций правильно делать не через if (!completed.getAndSet(true)), а через if (completed.compareAndSet(false, true)), ибо первый вариант вызывает второй в цикле

#Z3DLPI (0) / @hirthwork / 3427 дней назад

чтобы избежать warning'а при import'е deprecated класса, нужно удалить импорт, а к классу всюду обращаться через fully qualified name, например java.lang.String

#P3FQ7D (2) / @hirthwork / 3428 дней назад
--
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.