Sergey
Пруфы
В nodejs и chrome отличается устройство event loop
Sergey
Правила запуска кода, политики безопасности
Sergey
Да там кроме v8 ничего общего
Sergey
А в v8 вообще никаких API нет. Он даже в консоль писать не может
Nikolay
исполняется все еще в v8, да и пишем мы для v8
Sergey
исполняется все еще в v8, да и пишем мы для v8
И его работа с памятью зависит от конфигурации и кода в конкретном движке
Sergey
Вы пишете для ECMASCRIPT
Nikolay
))))
Nikolay
На стандарте
Sergey
На стандарте
Назовите отличия V8 от WebKit (JavaScriptCore)
Nikolay
Это еще один движок реализующий стандарт EcmaScript
Sergey
исполняется все еще в v8, да и пишем мы для v8
Не пишете вы для v8. Вы просто жс пишете
Nikolay
Ок, а кто исполняет js?
Sergey
Десятки разных движков, разных версий, на разных платформах
Nikolay
Канал про electron
Sergey
Канал про electron
На v8 он или нет не имеет никакого значения
Sergey
Вы не сможете отличить v8 от других движков по работе js кода
Sergey
Поэтому на каком бы движке ни был electron (а их два, разных версий) это не важно. Потому что важнее API и архитектура всей системы целиком
Nikolay
можно писать оптимальный код для выбранного движка, из за этого TS и загнется кста
Nikolay
Компилятор языка не имеет смысла
Sergey
Это не имеет смысла
Более того это антипаттерн
Sergey
Потому что движок меняет свои оптимизации и в новых версиях ваши оптимизации отвалятся
Sergey
Или станут работать куда хуже, чем без них
Nikolay
Пруф?
Sergey
Пруф?
Гугл
Sergey
Уже десятки раз так было
Sergey
Никто не оптимизирует под движок
Sergey
Смысла нет, один апдейт и всё старания в мусорку
Nikolay
Можно писать код таким образом, чтобы компилятору было проще оптимизировать код и эти оптимизации не изменялись уже много лет
Sergey
И это никак не гарантирует, что оптимизация при апдейте движка не перестанет работать
gfdigjwew
Именно Node.js запускает main-процесс
Сколько ест в пустом проекте сам node?
Sergey
Компилятор языка не имеет смысла
При том что в v8 есть компилятор
Sergey
Сколько ест в пустом проекте сам node?
Давно не смотрел. Можно запустить нужную версию локально и посмотреть профайлер
Nikolay
https://nodejs.org/en/learn/getting-started/the-v8-javascript-engine это про nodejs и v8
Sergey
https://nodejs.org/en/learn/getting-started/the-v8-javascript-engine это про nodejs и v8
Я 12+ лет занимаюсь вебом. Компилировал и прикручивал v8 к другим движкам, изучал как ивент луп работает(его нет в v8) и как шарить память с v8
Sergey
Что ты хочешь мне рассказать?
Sergey
Sergey
Что такое node js, ответьте для начала
LibUV + v8 + куча кастомного кода на C++ и js
Sergey
Причем libUV занимает центральное место в nodejs
Sergey
Более того, electron собирает кастомную версию chromium, nodejs и v8
Андрей
Вот кстати по поводу сборщика мусора нашел как можно надстройку сделать до момента создания окна как я понимаю https://www.electronjs.org/docs/latest/api/command-line-switches#--js-flagsflags
Sergey
Прежде чем оптимизации включать, мб есть смысл посмотреть в коде оптимизации? Мб где-то память не очищается
Dmitriy
а че у вас там не чистит. у меня мини-аппа при скрытии в трей сама по дефолту трет используемую рам
Dmitriy
ниче не прикручивал
Андрей
а че у вас там не чистит. у меня мини-аппа при скрытии в трей сама по дефолту трет используемую рам
ну вот кстати я тоже нашел инфу, что если в трей hide методом скрывать приложуху, то она должна тереть не используемое озу
Coder
я только изучаю электрон)
Андрей
const collapseToTray = () => { mainWindow.isVisible() ? mainWindow.hide() : mainWindow.show() }
Андрей
mainWindow.hide()
Coder
Благодарочка
Coder
То бишь спасибо)
x_dp
Добрый день, подскажите что нужно для реализации адекватной загрузки файлов с Web сервера в Electron? Использую electron-vite
Георгий
Всем привет, было ли у кого-нибудь подобное при работе приложения? Больше никаких зацепок нет кроме данного сообщения
Георгий
Rewrite
Тут нет бота с командами для админов
Rewrite
Sergey
Тут нет бота с командами для админов
Ага. Но я хз кто им управляет. Мб @Atassis
Георгий
С 18 сентября только спам от долбоёбов ботов
_dimon_chick_
Привет, хотел спросить/уточнить У меня есть приложение на electron У него есть redux что в главном процессе что в процессе окна (renderer) И еще плюс ко всему этому в главном процессе есть redis как база данных И что бы это все правильно синхронно работало, я при запросе с клиента на главный процесс через ipc сохраняю и в бд и в redux (так объем данных не большой) и после отправляю еще и запрос на клиент обратно что бы тот тоже сохранил данные (в главном процессе генерируются доп данные + валидация проходит И собственно вопрос, правильно ли я вообще сделал, или это гемор и никто так не делает ? Вроде на костыль не звучит, чат gpt даже сказал норм тема, но хотелось бы услышать от людей с какой никакой практикой
_dimon_chick_
Для чего тебе redux на бекенде?
Для большой скорости работы
_dimon_chick_
Что ты вечно в базу данных не стучаться
_dimon_chick_
Сделал до того как подвязал redis, мб с ним redux и не нужен будет
Sergey
Что ты вечно в базу данных не стучаться
теперь у тебя две бд, которые надо синхронизировать
_dimon_chick_
теперь у тебя две бд, которые надо синхронизировать
Сохранить в основную можно по завершении процесса
Anton
Ну если у тебя там правда такие массивы данных и какой-то сложный стейт, то вай нот. Но что-то мне подсказывает, что это больше похоже на преждевременную оптимизацию
Sergey
в renderer процесс положить СТМ типа redux имеет смысл, потому что сериализация между main-rendererer не такая быстрая, + еще и поход в редис
Sergey
а в main вообще нет смысла
Sergey
Сохранить в основную можно по завершении процесса
крешнулся, выключили свет, случайно закрыл и потерял данные