ROhmsteR
там опечатка на схеме CoudFlare
Ruslan
А всех кто прочитал статью, взяли на карандаш )
Maxx
кто скажет правильный ответ, тот получит 10 лет =)
Andy
Советую так же скачать её локально - последнее время такие статьи с хабра пропадают :(
Роджер
Подскажите как лучше сделать. У меня есть массив char SendPack[256]; В массив путем склейки добавляю новые данные и потом их отправляю. Перед тем как мне заново собрать массив для отправки новых данных мне его как лучше отчислить? SendPack[0]= 0x00 или проходить в цикле весь массив приравнивая его к 0х00? Или есть какая то другая функция которая помогла бы обнулять быстро и эффективно перед сборкой данных массив?
Ruslan
esp_restart() — крайне эффективная команда, с точки зрения потребления флеша
Роджер
esp_restart() — крайне эффективная команда, с точки зрения потребления флеша
Не смешно, мне же нужно держать соединение с сервером и вайфай
Ruslan
делай как можешь
ROhmsteR
ребята в гугле оказались хитрей
Роджер
делай как можешь
Мне кажется самый лучший это обнулять или функцией с нуля пересоздавать
Indr1x
Мне кажется самый лучший это обнулять или функцией с нуля пересоздавать
зачем его обнулять? есть варианты что он не перезапишется что ли новыми значениями? ты ведь его поиндексно обходишь делая запись
ROhmsteR
массив не полностью записывается ? можешь и записывать нулями в цикле всю длину массива
ROhmsteR
делай как можешь
я вот так и делаю, потом уже если появятся мысли, то можно переписать
зачем его обнулять? есть варианты что он не перезапишется что ли новыми значениями? ты ведь его поиндексно обходишь делая запись
Я порой не понимаю что они вкладывают в понятие "обнулить" массив. Ведь там не дано другого состояния. Ноль это тоже значение
Роджер
И чо. Ноль это тоже значение
Евгений
массив не полностью записывается ? можешь и записывать нулями в цикле всю длину массива
Если ты первый раз запишешь 99 символов, второй раз 90 А третий 10... После чтения ты очень удивишься воспоминаниям :))) P.S. Либо мы не поняли вопроса, либо человек не знает ЯП которым пользуется
Евгений
Ivan
Научутся в своей школе информатике, а потом массивы друг другу обнуляют.
Glamtie
А один мрачный мальчик запустил программу на ардуине, и светодиод у него такой - морг, морг, морг...
Anton
Если на стороне МК надо разбирать какое-то большое дерево, то явно проблема в архитектуре системы. Следовательно: 1 необходимо либо перестраивать архитектуру системы. 2 Либо как-то расширять ресурсы на стороне МК: увеличить ОЗУ, взять другой МК и пр. Но такой путь обычно заканчивается п.1 :)
это ж не промышленное изделие, а хоббийный (исследовательский) проект. на конкретные ограничения в данном случае наступаю последовательно. при наличии примерно 300кб свободной рам изначально, 16кб джейсон не кажется неподъёмным. к тому же, он 4 суток нормально парсился. поскольку проект уже близок к финалу, переделывать глубоко уже несколько лень... ну и вообще впредь наука
Ruslan
ну делай ребут раз в сутки
Anton
ну делай ребут раз в сутки
я пока свой аллокатор подусунул, посмотрим что выйдет
Glamtie
Еще аллокаторы подсовывают друг другу, тьфу - срамота"
Anton
мрак
потёмки. тьма. безысходность
Anton
Так из-за чего перегружается? Ты телеметрию какую нибудь ведешь? Типа свободной оперативной памяти, самого низкого значения оперативной памяти ну и креш дамп (если это креш)
я не говорил "перегружается". джейсон не парсится -- отваливается обработка прогноза погоды. сама текущая погода и время продолжают показываться.
Anton
Char которая потом через socket пропихивается на сервер
а ты либо троль либо не умеешь в ответы
Anton
А это то что ты как-то присылал, что ругается что ему память не выделить что-ли?
грубо условно говоря, код типа cJSON *monitor_json = cJSON_Parse(monitor); через 4 дня стал возвращять нуль. в лог пишется принятый джейсон -- он нормальный, валиндный. значит рамы не хватило.
Роджер
а ты либо троль либо не умеешь в ответы
Нет, хотел просто узнать как лучше выполнить задачу. Оптимально и без ошибок в коде.
Anton
Нет, хотел просто узнать как лучше выполнить задачу. Оптимально и без ошибок в коде.
может у тебя задача нули в сокет лить? я ничего не понял. я даже наводящий вопрос задал, чтобы помочь.
может у тебя задача нули в сокет лить? я ничего не понял. я даже наводящий вопрос задал, чтобы помочь.
Ты не поверишь, он сам не понимает что творит. Мне кажется там совершаются какие-то действия рандомного характера и каким-то образом из них че-то выходит
Роджер
может у тебя задача нули в сокет лить? я ничего не понял. я даже наводящий вопрос задал, чтобы помочь.
Возможно я не верно объяснил, у меня есть протокол. согласно протоколу мне нужносначала отослать пакет авторизации. потом не закрывая сессии слать пинговые пакеты и пакеды с данными. Для отправки всех пакетов хочу использовать массив и всегда записывать в него строку. пакет у меня в формате ASCII, формата #D# данные;\r\n И вот данные внутри могут быть разные и формат пакета с авторизацией и пингом разные.
Роджер
Роджер
Роджер
Роджер
Я думаю как лучше реализовать.
Денис
Я думаю как лучше реализовать.
никак. 🫠👀: 1. пришлем imei с ; и впишем кросив пароль 2. пришлем пароль NA 3. в строку пакета впишем na;me;p;;;;ackage
А контрольная сумма ХДЕ?
Роджер
А контрольная сумма ХДЕ?
В этой версии протокола не используется, а на более сложные и не нужны мои данные не такие важные
Денис
А контрольная сумма ХДЕ?
зачем, мы лучше еще пароль устройства в чистом виде пришлем
Роджер
Там есть шифрование, но оно отключено по умочанию.
В этой версии протокола не используется, а на более сложные и не нужны мои данные не такие важные
А потом данные становятся важными. Но пароли по прежнему будут ходить в открытом виде и контрольной суммы не будет. Ага.
И так сойдет
Я вот каждый раз когда читаю новости как кто-то вмешался в выборы взломал очередной госпортал, то сначала думаю ну как так. Там же шифрование, аутентификация по ключам, ограничения доступа и кучи всякой новомодной хуйни. А потом вспоминаю, наверное где-то там внутри была железка роджера...
Роджер
это секретная информация кто поставляет америкосам и западу оборудование и программыэ
Евгений
Ты просто роджера не знаешь. А он тут не первый день. Лучше рубить такие решения прям на корню.
Просто его друзья когда то придумали этот протокол, когда не было опасности, теперь людям страдать
Роджер
Это протокол первой версии. в протоколе 4 версии все есть. но мне не нужно так сложно
Роджер
Вы так боитесь конкуренции что не можете подсказать
Glamtie
Ваще, равных нам на рынке нет, а появятся - мы им клоуна пропишем в чапалах
Роджер
Сам решу задачу больше опыта получу.
Евгений
Сам решу задачу больше опыта получу.
То есть до сих пор ты до гугла не дошел?
Glamtie
Отмазан!
Glamtie
Передал ученым эти символы, говорят диалект странный но могут расшифровать.
Роджер
Я решил, что буду использовать функцию, выделяю места под массив. Делаю сборку данных, отправляю. Функция закончилась освобождаю память.
Glamtie
Скока берут?
5 полторашек минимум. Это же научная работа.
Anton
Я думаю как лучше реализовать.
ну, судя по картинкам, данные таки в аскии-зет строках. заполнять целиком буфер нулями для того чтобы сбросить такое представление действительно не обязательно, достаточно первый символ
Anton
Я решил, что буду использовать функцию, выделяю места под массив. Делаю сборку данных, отправляю. Функция закончилась освобождаю память.
кстати, с выделениями места под массив — со стеком надо аккуратнее, он может внезапно кончиться, его не так много дают на таску, обычно. с кучей тоже всё не всегда просто, может оказаться фрагментирована и тогда даже при общем достаточном количестве может не оказаться необходимого непрерывного куска. статически делать — проблема параллельным доступом
Anton
Пока попробую так мне нужно не так много, просто чтобы без ошибок
я вижу проблему в коммуникации... ну да ладно, главное без ошибок
Anton
В смысле "не много дают" ? Скока укажешь столько и выделит
в смысле для апп_мэин надо как минимум озаботиться указанием размера в конфиге, а я сомневаюсь что он понимает о чём речь