ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
554165
fk0123 (19.10.2014 12:46, просмотров: 38311) Cкpипaч
Ваши protothreads -- жуткий костыль. За него сжигать нужно. Во-первых дикая латентность помноженная на 146% cpu load только на проверке условий в циклах -- сколько-нибудь большой проект в этом вообще утонет, будет больше времени тратить на этот цикл, чем на работу. Нужен другой механизм обработки событий, менее затратный. Этот годиться только для маленьких программок не критичных к потреблению энергии к тому же. Во-вторых и самое главное -- в protothreads так же невозможно писать сколько-нибудь сложные алгоритмы. Если применительно к конечным автоматам -- с множеством (более одного) условий перехода из конкретного состояния (и как минимум второе -- не таймаут). В protothreads это просто невозможно закодировать! Тут показывали -- всё опять превращается опрос условий руками. И самое главное трудно написать код без ошибок. Или легко допустить ошибки, что без разницы. И на уровне кодирования (нужны статические переменные, нужно не забыть вписать все условия переходов), и на уровне составления алгоритма -- вместо того, чтоб как-то формализовать алгоритм, хотя бы в виде рисунка КА программист начинает сходу писать говнокод из головы. Естесственно неадекватный в алгоритмическом смысле. Нет, я не спорю, что для маленьких и простых задач protothreads может быть удобен... Какие-то алгоритмы легко на него ложаться. В каких-то задачах идиотский цикл не мешает. Точно так же как и какие-то программы можно писать на Basic. Но далеко не всё подряд. Это не проф. уровень.