Задать вопрос
  • Как перепрошить телефон xiaomi на заблокированном загрузчике?

    @rPman
    4pda тему со своей моделью телефона искал? инструкции выполнял?
    Заблокированный загрузчик позволяет прошивать только официальные прошивки, подписанные производителем. Чтобы прошить модифицированные или основанные на других прошивках, требуется разблокировка загрузчика.

    обычно разблокировку можно сделать из fastboot режима (включить устройство с зажатым питанием и громкость вниз), подключив смартфон проводом к компьютеру и выполнив fastboot (нужно соответственно его установить), так же скорее всего ты можешь откатиться на предыдущую прошивку, если переключить слот a/b
    # узнать текущий слот
    fastboot getvar current-slot
    # сменить слот, например b
    fastboot set_active b
    Ответ написан
    21 комментарий
  • Как преобразовать xml в массив php с сохранением атрибутов?

    Fragster
    @Fragster
    помогло? отметь решением!
    Читать последовательно через https://www.php.net/manual/ru/book.xmlreader.php самому заполняя массив. Готовый код не дам, но там несложно.
    Ответ написан
    Комментировать
  • Как составить наиболее эффективный алгоритм групповой рассылки сообщений по каналам WebSocket?

    @rPman
    У тебя сервер хранит все открытые сокеты клиентов, по той же логике, как оптимизируют загрузку файлов в несколько потоков, сделай и рассылку. Создай пул воркеров, создай очередь на отправку сообщений, воркер по завершению отсылки будет брать следующее сообщение на отправку.

    Такой подход позволит реализовать воркеров на нескольких нодах, мало того, можно сразу очереди по какому то правилу (хеш от id например, но это фиксирует количество нод, для смены придется весь кластер перезапускать) раскидывать между нодами, тогда и синхронизацией очередей между нодами не нужно заморачиваться.
    Ответ написан
    Комментировать
  • Как сделать так чтобы javascript отрабатывал не по верхней строке, а по каждой строке таблицы?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Идентификатор должен быть уникальным, на то он и идентификатор. У вас же все кнопки "зовутся" одинаково, поэтому и обработчик навешивается только на первую попавшуюся.
    Замените id на class, адаптируйте код обработчика под работу с объектом, на котором произошло событие (в jQuery это будет $(this)), а не хардкодными элементами DOM и всё заработает как надо.
    Ответ написан
    1 комментарий
  • Какой бюджетный смартфон может потянуть доту 2?

    GavriKos
    @GavriKos
    Ну вот поставить винду 11

    нет таких
    или стим ставится на андроид

    и такого нет
    Ответ написан
  • Что такое .Net и .Net framework?

    Zuguki
    @Zuguki
    I'm working all the time!
    Привет.
    Раньше было разделение на .net framework, .net core и .net standart. Суть в том, что все это фреймворки, которые содержат либы и тд. Просто либы в .net framework - только под винду, а под .net core кросплатформенные решения.

    .net framwork и .net core оба используют внутри себя .net standart
    Сейчас .net framework и .net core объеденили и получился .net (кросплатформенный)
    Ответ написан
    1 комментарий
  • Какой нужен БП?

    xez
    @xez Куратор тега Компьютеры
    TL Junior Roo
    Посчитайте на калькуляторе.
    https://www.xcom-shop.ru/configurator/powersupply
    Ответ написан
    Комментировать
  • Почему на процессоре AMD написано это?

    Нет, на процессоре это не написано. Там написано made in China и © 2020 AMD. Это два разных предложения.
    Ответ написан
    4 комментария
  • Как пометить метод Main атрибутом в новейших версиях?

    petermzg
    @petermzg
    Самый лучший программист
    Если вам нужно задавать атрибуты для main. Тогда и добавьте его в проект.
    Top-level statements это для новичков, для облегчения вхождения.
    Просто скрывает точку входа, чтобы каждый раз не писать конструкцию.
    public static class HelloClass 
          {  
               public static void Main(string[] args) 
               { 
                  
               } 
           }

    Вот тут можно задать точку входа.
    6707b12d49bd5046919043.png
    Ответ написан
    1 комментарий
  • Как ограничить количество одновременных запросов на сервер?

    0xD34F
    @0xD34F Куратор тега JavaScript
    подскажите, что мне нужно подправить

    Всё нужно подправить. А ещё больше - сделать.

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

    Пусть функция возвращает промис, который будет резолвиться после получения результатов всех запросов.

    Под хранение результатов запросов создадим массив.

    Так как url'ы могут повторяться, а запросы не должны, выполним группировку массива url'ов в объект: ключи - url'ы, значения - массивы индексов, под которыми данный url встречается в исходном массиве. Выдернем из этого объекта ключи - это будет массив уникальных url'ов.

    Также создадим два счётчика - количество отправленных запросов и количество полученных ответов.

    Собственно запрос. Первым делом проверяем, сколько ответов получено - если все, резолвим промис массивом результатов. В противном случае проверяем, сколько запросов отправлено - если не все, увеличиваем соответствующий счётчик, отправляем запрос; по получении ответа достаём массив индексов url'а, сохраняем результат, увеличиваем счётчик полученных ответов и пытаемся отправить следующий запрос.

    Ну и запускаем всё это дело в работу - обычный цикл for, в котором на каждой итерации выполняется запрос. Минимум одна итерация (это на тот случай, если массив url'ов пустой), максимум - количество уникальных url'ов или ограничение на количество одновременных запросов, меньшее из этих значений.

    Всё:

    function makeRequests(urls, max) {
      return new Promise(resolve => {
        const results = Array(urls.length).fill(null);
        const groupedUrls = urls.reduce((acc, n, i) => ((acc[n] ??= []).push(i), acc), {});
        const uniqueUrls = Object.keys(groupedUrls);
        let countRequests = 0;
        let countResponses = 0;
    
        for (let i = 0; i < Math.max(1, Math.min(max, uniqueUrls.length)); i++) {
          request();
        }
    
        function request() {
          if (countResponses === uniqueUrls.length) {
            resolve(results);
          } else if (countRequests < uniqueUrls.length) {
            const url = uniqueUrls[countRequests++];
            fetch(url)
              .then(result => result.json())
              .catch(error => error)
              .then(result => {
                groupedUrls[url].forEach(n => results[n] = result);
                countResponses++;
                request();
              });
          }
        }
      });
    }

    Ответ написан
    Комментировать
  • Какой стандарт связи выбрать для устройств умного дома?

    @Drno
    бери тот который опенсорс, и который сможешь обслуживать и понимать
    Ответ написан
    Комментировать
  • В какой программе делается такая анимация?

    @alexalexes
    Любой 3d редактор, плюс какой-то набор готовых моделек. Небольшая усидчивость для Ctrl+С - Ctrl+V.
    Моделируете траекторию камеры и можете пилить видосик.
    Вам даже просматривать обучающие ролики не нужно, как трансформировать начальные модели, все примитивно.
    Ответ написан
    1 комментарий
  • В какой программе делается такая анимация?

    Blender можно, ну или любое другое 3d. Можно хоть в unreal engine такое накидать.
    Ответ написан
    1 комментарий
  • Нормально ли, что звук кулера такой громкий?

    nava2002
    @nava2002
    Инженер
    В характеристиках ID-COOLING IS-30A указано:
    Максимальный уровень шума, - 35,8 дБ (это шумно)
    Связано с большими оборотами вентилятора 3500 об/мин (это для обеспечения нужного потока воздуха)
    Тихий вентилятор это примерно 20 дБ при максимальные обороты до 2000 (у меня 1600).
    Ответ написан
    Комментировать
  • Правильная ли архитектура БД?

    @qyber
    У тебя в 4-х таблицах есть одинаковые столбцы:
    name_kz
    name_ru
    name_en

    ИМХО, я бы убрал эти столбцы из таблиц Product_statuses и Product_types и обращался бы к таблице Products и с использованием JOIN'ов получал бы неободимую информацию
    Ответ написан
    1 комментарий
  • Нормально ли, что звук кулера такой громкий?

    @Drno
    Дело в гавнокуллере
    Вы купили мини куллер, маленького размера с высокими оборотами... отсюда и звук)

    Как уже посоветовали - лучше ставит ькуллеры типа "башня"
    Ответ написан
    1 комментарий
  • Нормально ли, что звук кулера такой громкий?

    xez
    @xez
    TL Junior Roo
    Разные модели кулеров шумят по разному. Какие-то тихие, какие-то шумные.
    Хотите тишины - ставьте гигантскую башню.
    Ответ написан
    Комментировать
  • Почему у двух одинаковых ssd разные результаты в CrystalDiscMark?

    smilingcheater
    @smilingcheater
    У вас разные модели на скрине, на 250 и на 500 гигов. Скорее всего у них разное количество чипов, поэтому отличается скорость записи.
    Ответ написан
    Комментировать
  • Отслеживается ли логирование вкл/выкл ПК по-умолчанию?

    @NortheR73
    системный инженер
    1. В журнале System события Kernel-General 13 (выключение) и Kernel-General 12 (включение). В событии указано соответствующее время (GMT)
    2. В журнале System события EventLog 6006 (Служба журнала событий остановлена.) и EventLog 6005 (Запущена служба журнала событий.)
    Ответ написан
    1 комментарий
  • Почему при добавлении процента делением результат больше, чем умножением?

    @Everything_is_bad
    780 надо добавить 3%
    780 + 780*0,03 = 780 * ( 1 + 0,03) = 780 * 1,03
    а теперь расскажи как он получил 0,97

    ЗЫ как же все плохо у кучи людей с простой математикой, уже ни раз встречаю проблемы посчитать даже проценты

    АП: дошло откуда растут ноги, делить надо, если ты хочешь узнать число из которого надо вычесть 3% и в итоге получить 780
    Ответ написан
    3 комментария