на условия. Правильно я понял работу этих функций?
Я не уверен что понимаю и тебя и автора кода.
А в чем вопрос? Вроде все верно, что if в обоих случаях имеет смысл того, что это просто защита от переполнения буфера и его закольцовывание. Так сказать отслеживание граничного условия.
Стиль ужимистого ужа, бесит правда, нафига так сживать код, не понимаю. Вместо 6 строк кода, написал 2 строки и герой, зато другим теперь тр*хаться с его кодом....
Без проверок зашквар, да. Смотреть на проверки и говорить что это займет время? При том что у нас явный дисбаланс производительности тредрв? За что борьба то? Не хватает записи и данные теряются?
Выбирай выражение. Я спросил про условия и все. И не просил в том, что бы тр*хал тебя код
Я выбираю выражение. Ничего лишнего я не сказал. На личности я не переходил - тебя никуда не посылал вроде, не совсем понимаю - к чему ты так придрался. К тебе тоже есть просьба в таком случае - строй свои вопросы и предложения так, чтобы их могли понимать люди. Так будет проще общаться с ними, так люди будут понимать тебя и смогут помочь - сейчас не очень понятно в чем у тебя вопрос.
Я спросил про условия из буферного кольца и хотел узнать крутятся-ли они в цикле
Ясно, видимо русский не твой родной язык. Без обид. А изначальный вопрос у тебя какой вообще? Я выше прочел, нашел, что ты делаешь прием/чтение каких то данных. - Это все на микроконтроллере или на пк? - Какие скорости у тебя передачи данных в задаче стоят? - Почему ты обращаешь внимание на столько тщательно к условиям и тд - у тебя маломощный мк или слишком быстрый канал данных? Не знаю твой уровень программирования, есть умельцы, которые держат всю программу в голове, даже если там много файлов и тысячи строк кода и с уверенностью могут сказать, что вышестоящие функции проверяют все необходимые данные, тогда они опускают кучу проверок на нижних уровнях программы. Но если ты будешь убирать проверки, то код в итоге станет по сути монолитным и даже маленькие изменения могут привести к плавающим багам, которые будет трудно потом отловить. И это уже код для машины, а не для человека получается, что плохо. Поэтому еще раз вопрос - для чего ты так сильно акцентируешь внимание на производительности - просто для интереса или есть трудная задача? Возможно есть другие пути ее решить более лаконично, например увеличив частоту тактирования микроконтроллера, что часто возможно.
Я сам гадаю на что они акцентируют, честно. На производительность или на "не блокирующий" вариант или на все вместе. Это тестовое задание из собеса. И не вариант спросить. И зачем столько текста ты писал, потратив 10 минут своей жизни?
Я потратил время, и далеко не 10 минут своей жизни, так как ценю время других людей) Ну и твое время в частности. Чем понятнее излогается мысль в тексте, тем меньше вопросов может появиться у читателя, на мой взгляд) На собеседовании часто обращают внимание на комментирование кода и вообще стиль излогания идей в коде, смотрят на то - делишь ли ты программу на модули или пишешь в одном файле, если ты сделаешь не идеальную первую иттерацию - врядли тебя там завалят из за этого. А если и завалят, то не стоит идти в такую компанию - значит там будет постоянный напряг с руководством по поводу твоих решений рабочих. По сути на собеседлвании смотрят общий подход к решению задачи и решена ли она вообще или нет/работает твой код или нет. Блокирующие там у тебя вызовы или нет, в первой итерации, если не было требования сделать их не блокирующими не важно 100%. Главное код понятный и рабочий напиши.
Обсуждают сегодня