Pull to refresh
91
0
Владимир Парфиненко @cypok

Системный программист

Send message

Хардкорные Java/JVM задачки

Reading time 10 min
Views 24K

Перформансные задачи от Контура уже были, настала и наша очередь: представляем хардкорные задачи с Java-конференции JBreak 2018, aka «ад от Excelsior».


Задачи даны в оригинальных формулировках, в каждой задаче может быть несколько правильных ответов, и к каждой задаче дано решение под спойлером.


Задача 1


Ваш коллега начитался Java Language Specification и написал следующее:


void playWithRef() {
    Object obj = new Object();
    WeakReference<Object> ref = new WeakReference<>(obj);
    System.out.println(ref.get() != null);
    System.gc();
    System.out.println(ref.get() != null);
}

А разгребать вам: какие результаты исполнения возможны?

Правильный ответ и еще больше хардкора!
Total votes 40: ↑35 and ↓5 +30
Comments 23

Играй и изучай VIM одновременно

Reading time 1 min
Views 21K
Наткнулся на интересную вещицу: VIM Adventures.



Это онлайн игра основанная на хоткеях текстового редактора VIM. Полезна будет тем, кто всегда боялся открывать VIM, чтобы, наконец, пересилить страх; а также тем, кто уже давно знаком с VIM, чтобы просто получить немного удовольствия.
Total votes 78: ↑75 and ↓3 +72
Comments 26

Отмечание просмотренных серий на MyShows.ru

Reading time 4 min
Views 26K

Постановка задачи


Задача: автоматизировать рутинные действия по отмечанию просмотренных эпизодов на сайте myshows.ru. Поясню, после просмотра очередной серии Теории Большого Взрыва я открываю мои сериалы, нахожу сериал, нахожу просмотренный эпизод и отмечаю его как «просмотренный».

После обнаружения api.myshows.ru сразу зародилась идея серьезно упростить этот процесс. Хотелось бы, чтобы это выглядело так: вызываем контекстное меню файла с только что просмотренной серией и выбираем «Отметить на myshows.ru».
Читать дальше →
Total votes 56: ↑45 and ↓11 +34
Comments 66

Использование IPv4 адресов с российским размахом

Reading time 1 min
Views 1.5K
По мотивам bash'а.

Для тех, кто недостаточно хорошо помнит гимн РФ:
for i in {200..225}; do nslookup 62.76.96.$i | grep "(?<=name = ).*$" -o -P ; done

upd Варианты улучшенные:

лаконичный
dig -t ptr +short {200..225}.96.76.62.in-addr.arpa

винда с PowerShell
for ($i=200; $i -le 223; $i++){(nslookup 62.76.96.$i)[3].ToString().Replace('.', ' ').Substring(9)}

винда без PowerShell
for /l %i in (200,1,255) do nslookup 62.76.96.%i
Total votes 305: ↑277 and ↓28 +249
Comments 84

Information

Rating
4,321-st
Location
Новосибирск, Новосибирская обл., Россия
Registered
Activity