• Javafx, почему событие так (не)отрабатывает?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Недостаточно кода чтобы точно объяснить смысл поведения но в целом как то так.
    - Не забывайте что javafx крутится в своем потоке.
    - объявите ваш String как class member .
    - касательно именно javafx то гляньте SimpleStringProperty и другие типы созданные специально удобства.

    Ну а конкретно у вас следующая ситуация.
    вы используете лямбду что в общем то обычный "вложенный анонимный класс" . В таких ситуациях любая переменная обязана быть final или иметь тип Atomic. Все это происходит из за проблем синхронизации.
    Как вариант вы можете использовать немного другой подход и гдето внутри javafx(в случае с fxml) это работает примерно также:
    String s;
    private void doSome(){
     s="";
    }
    Button button=new Button();
    button.setOnAction(e->{
      doSome();
    });
    Ответ написан
  • Можно ли перенапривить ввод/вывод запущенного процесса в linux socket в реальном времени?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Есть замечательная утилитка nc которая это сделает в любом виде.
    Как то прошляпил что сокеты, есть еще socat
    Ответ написан
  • Как скачать файл по ftp с микротика?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Может лучше сразу отбросить такие костыли с колхозом и использовать SNMP?
    По вопросу, В services включен ftp? Пользователь с правами ftp создан? В конце концов ошибка то какая? Телепаты в отпуске.
    Ответ написан
  • Как писать программы на java?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Основы и есть все что железобетонно необходимо знать, все опирается на это.
    Как пример что вы привели массивы и графический редактор.
    Если взять за основу 3д редактор то выйдет следующее. Утрированно все работает на этих массивах. Модель состоит из массива точек, еще один массив описывает соединения точек из первого массива в полигоны, дальше еще один массив описывает координаты текстурной развертки по этим полигонам. Все операции в том или ином виде идут над этими массивами, причем как правило они весьма простые но математические.
    В общем учите основы, дальше уже берите книжки с уклоном что вам нравится, если графика то по большей части это будут книги не языковые а матан,геометрия и т.д. .Если хочется в сеть то для начала книжку про то как это устроено, спецификации и стандарты, потом уже можно взять книжку именно по java и сетям и дело пойдет очень легко.
    Любая программа даже самая огромная в конечном счете состоит из множества простейших участков кода основ.
    Ответ написан
    3 комментария
  • Как мониторить текстовый файл с помощью The Dude?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    nxlog умеет такое.
    Ответ написан
    Комментировать
  • Как устанавливаются видеодрайвера в debian 9 на rizen7 c Radeon RX Vega 10?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Лучший вариант это ставить ядро 5 версии, там много патчей под вегу и райзены. Какой дистрибутив это уже десятое дело.
    Ответ написан
    Комментировать
  • Как поднять сервер для исходящих звонков?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Asterisk.
    1) На нем исходящий транк на провадера.
    2) Запись разговоров. Тут либо прям через gui в случае всяких сбороко либо классически и по меньшим ресурсам через диалпан ручками. Последнее принципиально и лучше т.к. не будет лишнего говна.
    3) обычный веб сервер(даже lamp) и на нем простенький генератор .call файлов. Можно и без пышки путем cgi скриптов. Вот и api.

    На пункт 2 и 3 даже с нулевыми знаниями уйдет пара дней, на первый без знаний скорее всего гораздо больше.
    Ну и бесплатно на готовенькое по астериску очень вряд ли кто то скажет или поможет на готовенькое.
    Ответ написан
    6 комментариев
  • Возможно ли организовать сетевую синхронизацию времени между сегментами сети связанными через однонаправленный шлюз?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    В закрытом сегменте сети поднимаете ntp сервер, покупаете GPS антенну и берете время с нее. У меня на работе везде такая схема, gps антенны все на rs232, ntpd только подшаманить и все. Везде это порядка 40 объектов, точность времени нужна по специфичности работы софта(телеметрия железа и датчиков).
    Ответ написан
    3 комментария
  • Как передать аудио с windows на linux?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    На сервак с дебианом ставь paprefs в нем включи upnp\dlna сервер и airplay, или тоже самое через конфиги.
    На винде утилита Stream What You Hear.
    На андроиде софтинка AirAudio, но ей обязательно нужен рут.

    Хм, еще есть порт pulsaudio под винду. Можно попробовать нативно для пульса звук пихнуть по сети.
    Ответ написан
    4 комментария
  • Почему портится качество изображений?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Много тонкостей. Покажите код где именно загружается изображение и как его передаете в ImageView.
    Немного тонкостей, каждый способ ниже даст абсолютно разный результат итоговый по качеству:
    1)через конструктор Image(java.lang.String url, double requestedWidth, double requestedHeight, boolean reserveRatio, boolean smooth).
    2) Методы setFitWidth()\height у ImageView дадут другой результат.
    3) Методы setScaleX()\Y у ImageView дадут тоже другой результат.

    Дальше, не ручаюсь но, раньше был баг со сглаживанием, точнее его отсутсвием а еще точнее игнорированием в конструкторе Image, возможно это уже пофиксили а возможно и нет. Лично я выкручивался способами 2 и 3, после того как подгружал его через Image уже вытягивая.

    PS если ImageView используете только для отображения картинки то лучше сразу откажитесь в сторону css. Влепите pane на нужное место и в него уже динамически лепите css стиль. Это гораздо легче по ресурсам и дает гораздо больше вариантов всяких рюшечек.
    Ответ написан
    6 комментариев
  • Какие существуют легковесные дистрибутивы Linux для ARM?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    tinycorelinux, debian собранный руками.
    Ответ написан
    Комментировать
  • Как изменить размер квадратов в фиксированном поле, исходя из количества всех его клеток??

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Динамически рассчитывать? А вообще не совсем понятно что именно вы хотите. Надо чтобы при изменении окна прямоугольники всегда растягивались под размеры?
    Ответ написан
  • Как настроить использование 2 IP на VPS?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    В прямом смысле то что вы хотите невозможно сделать т.к. таблица роутов глобальная но есть выход как это можно немного налюбить и придется делать следующее:
    1) В iptables есть ключи –uid-owner –gid-owner –pid-owner. Через них ловите и маркируете трафик, соответсвенно каждый ключ ловит по своему типу, первый по uid пользователя, вторая по guid группы пользователей и третья по pid процесса но с 3ей не все так просто т.к. придется гдето скриптом мониторить нужный процесс и хватать пид.
    2) Дальше согласно маркировки пакетов суете в нужный интерфейс.

    Работать будет но получите сексуальных отношений на пару дней если не недель т.к. фактически вам придется дублировать все правила в большом количестве.
    Ответ написан
    2 комментария
  • Как установить deb пакет на Solus OS??

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    А чем вы руководствовались при выборе ОС? Может для начала стоит читать что за ОС, чем она отличается и сразу оценивать возможные неудобства и проблемы?
    Вы вникали что попали так сказать в очень неловкую ситуацию потому как по факту вы загнали себя в дистрибутив аля гента где предполагается что все будет собираться ручками. Следовательно вы дефакто лишаете себя "нормальной" установки бинарников проприетарных, а значит можете довольствоваться только костылями совсем фанатскими или в лучшем случае поданными с барского плеча run файлами.
    Вот тут и довольствуйтесь пунктом " All distributions" который ведет какраз на run инсталлер с которым у вас предстоит, крайне вероятно, долгая и незабываемая ночь.
    Ответ написан
    4 комментария
  • Как сделать дополнительные мониторы по сети?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    Никак. Самый не проблемный вариант это KVM свитч но стоят они прилично.
    Более геморный это колхозить из набора железяк. Ну к примеру купить 2 самый простых dvi или vga квм свитча(рублей по 500 за каждый можно найти). Так как на ноуте только hdmi и он один то купить 2 usb видяшки(по куску за штуку можно найти). Для удобства докупить еще и usb hub для ноутбука куда и воткнуть видяшки. Дальше все это колхозишь воедино и на выходе у тебя будет 2 монитора которые переключаются кнопочками на пульте.
    В случае чисто только 2х линуксов и на компе с мониторами и на ноуте то можно расшарить их но подкводных камней с костылями будет чрезвычайное количество а результат работы сильно врядли удовлетворит.
    Ответ написан
    1 комментарий
  • Почему в интерфейсах не надо указывать модификатор доступа?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Связано с тем что интерфейс это всегда "вершина айсберга" которая скрывает в дальнейшем саму реализацию. Можешь считать это точкой взаимодействия.
    Ответ написан
    1 комментарий
  • Любой Java байт код можно успешно декомпилировать и просмотреть его?

    jamakasi666
    @jamakasi666 Куратор тега Java
    Просто IT'шник.
    Именно полностью оригинальный код не получится(если конечно не включены все дебагсимволы). Код восстановится до конструкций похожих т.е.:
    условно говоря кострукции
    for(int i:0;i<100;i++){}
    
    или
    for(Object o: objects){}
    
    и еще тонна вариантов

    В байткоде будет иметь одинаковый вид(не принимайте наслово но это образно говоря). А значит декомпилятор увидит подобный байткод и восстановит конструкцию именно ту которую посчитает наиболее удобной но не ту которая была в оригинале.
    Аналогично с остальными случаями, констанатами,функциями,классами.
    Кроме того не будут учитываться еще тонны тонкостей, взять хотя бы аннотации.

    Т.е. в целом код будет читабелен, скорее всего но не факт компилируем, вероятно что рабочим но с глюками которых не было в оригинале.
    В общем все напрямую зависит от компилятора, стиля кода, используемых фич которые что то делают именно на этапе компиляции, сахара библиотек и языка.

    В том же с\с++ можно декомпилировать до асемблера а затем восстановить уже его до С, который также вполне читабелен и местами рабочий. Если есть дебаг символы то еще и тонны других вещей восстановится (имена констант\переменных\функций\коментариев).

    Короче все очень относительно но в целом java код даже скомпиленный с оптимизациями намного более читабелен но это связанно с особенностями работы и самих бинарных файлов.
    Ответ написан
    Комментировать
  • Как можно задействовать GPU во всех вычислениях вместе с CPU поиск в txt файлах?

    jamakasi666
    @jamakasi666 Куратор тега Linux
    Просто IT'шник.
    GPU никак не заюзать для этой задачи. Но сделать очень быстро можно если есть руки и голова и следующее:
    1) Экстремально быстрый диск, еще лучше если это будет ram диск в очень быстрой оперативке
    2) многоядерный проц.
    3) софт в котором крайне понимающие люди учли все затыки, переключения контекстов между ядрами, число обращений к ненужным api системы, нашли самый быстрый вариант поиска совпадений(регулярка или условия) и много других тонкостей.

    В вашем случае затык в 99% будет уже просто на этапе накопителя т.к. он врядли обеспечит такую скорость чтобы утилизировать проц даже средний и даже со средней паршивости программой.
    Ответ написан
    Комментировать
  • Взламывают Mikrotik RouterBOARD 750G r3 что я делаю не правильно?

    jamakasi666
    @jamakasi666
    Просто IT'шник.
    Сам winbox и есть дыра. Юзайте ssh по сертификатам и порты меняйте на кастомные.
    Если без винбокса руки из одного места то делайте vpn то микрота и уже через этот vpn пользуйте winbox.
    Ответ написан