Pull to refresh
30
0
Send message

Сравнение потребления памяти у разных структур хранения данных

Reading time2 min
Views25K
Различные структуры в Java потребляют разное количество памяти. Поэтому для нас очень важен выбор наиболее эффективного метода хранения данных.

Какая будет разница по потреблению памяти между конструкциями `new int[1024]` и `new Integer[1024]`?

int[] ints = new int[1024];
for (int i = 0; i < ints.length; i++) ints[i] = i;

Integer[] ints = new Integer[1024];
for (int i = 0; i < ints.length; i++) ints[i] = i;

Узнать
Total votes 50: ↑41 and ↓9+32
Comments43

Вышел Voyage Linux 0.7.5

Reading time2 min
Views5.8K
Поискал по Хабру, про Voyage ни слуху ни духу. А сегодня как раз вышел очередной релиз этого очень интересного дистрибутива на основе Debian для embedded систем.

Версия 0.7.5 основана на ядре 2.6.38 и Debian 6.0.2 «Squeeze».

Следующая планируемая версия 0.8, в которую войдет ядро 3.0.x, и Voyage станет одним из первых дистров на этом ядре.

Voyage заточен на работу на следующих платформах: PC Engines ALIX/WRAP, Soekris 45xx/48xx и Atom, а также виртуальные машины.

Отличается Voyage низкими требованиями к ресурсам. Для типичной инсталляции требуется всего 128MB дискового пространства. А вообще фишка Voyage в том, что он использует unioinfs и монтирует всю систему на read-only, таким образом, система на флешке не запиливается.

Обычно на Voyage делают брэндмауэр, беспроводную точку доступа, IP АТС на базе Asterisk, музыкальный проигрыватель, или сетевое хранилище. Лично у меня Voyage работает на ALIX board с тремя ethernet портами и WiFi картой, является точкой доступа в Internet для офиса (eth0), при этом подключено два провайдера (eth1 & eth2) по PPPoE, один для данных, другой для IP телефонии. Voyage раздает WiFi, и к нему подключены офисный IP телефоны (установлен Asterisk). Покупалось это все тут, но дистрибутив Askozia был снесен и установлен Voyage.

Выглядит коробочка так:
image

Далее…
Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments59

Видеоглазок с минимум затрат

Reading time4 min
Views132K

Добрый день, хабрапользователи.



Я привык с детства смотреть в глазок перед тем, как отрыть дверь в квартиру кому-либо.
Но после переезда так вышло, что в глазок не видно того, кто к тебе в гости просится.
Другими словами надо сделать что-то, что позволит не выходя из квартиры видеть, что же там у лифта происходит.

Примерно вот так:
видео


Сказано — сделано!
Прочитать как сделано
Total votes 214: ↑200 and ↓14+186
Comments157

Знакомимся с OpenGL

Reading time8 min
Views297K

OpenGL


Знакомство с OpenGL нужно начать с того, что OpenGL — это спецификация. Т.е. OpenGL лишь определяет набор обязательных возможностей. Реализация же зависит от конкретной платформы.
OpenGL является кроссплатформенным, независимым от языка программирования API для работы с графикой. OpenGL — низкоуровневый API, поэтому для работы с ним неплохо иметь некоторое представление о графике в целом и знать основы линейной алгебры.
Читать дальше →
Total votes 96: ↑81 and ↓15+66
Comments47

Подсчёт времени выполнения метода через аннотацию

Reading time8 min
Views20K
Во многих проектах требуется посчитать время, которое затратил тот или иной метод. Для этого можно вручную сохранять значение System.currentTimeMillis() и после метода вычислять затраченное время. Когда методов много это становится не очень удобным.
Поэтому я решил написать простенькую аннотацию, которая бы считала время выполнения метода. Попытавшись найти информацию в интернете, понял, что её по данной теме очень мало. Придётся как-то выкручиваться, собирая информацию по крупицам.
Читать дальше →
Total votes 51: ↑49 and ↓2+47
Comments30

ProgressBar — Javascript Canvas2d

Reading time4 min
Views6.3K

Здравствуйте. Последнее время я достаточно часто имею дело с JavaScript-canvas, особенно написание всяких игрушек, которые требовательны к трафику в силу необходимости загрузки множества картинок.
Обычно сначала загружается около 50-100кб сжатого JavaScript, после чего — энное количество картинок(например, 500кб, 2мб, 10мб и т.п.) и только после этого запускается сама игра. Можно, конечно, загружать по ходу, но отсутствие текстур врядли порадует игрока.
Потому я решил, что необходимо сделать какой-то приличный, симпатичный, легко-настраиваемый(чтобы быстро менять от проекта к проекту) прогресс-бар, но, обязательно без использования картинок. Под катом исходники под лицензией LGPL, небольшая инструкция, как это сделать и внизу статьи — ссылка на результат.
Читать дальше →
Total votes 90: ↑85 and ↓5+80
Comments31

Information

Rating
Does not participate
Registered
Activity