-
- В мелких контроллерах, типа кортексов или AVR таблица векторов
прерываний это константные данный этапа компиляции. То есть,
компилятор должен знать адрес на момент линковки. Всякие
динамически создаваемые объекты плохо тут ложатся. Получается, либо
установка векторов в рантайме с переносом таблицы векторов в RAM
(если такая возможность есть). Либо прослойка просто через таблицу
в RAM (если возможности перенести таблицу нет). В обоих случаях
накладные расходы. VladislavS.(144 знак., 03.10.2022 14:35)
- Это проблема поддержки со стороны разработчиков компилятора. Tyмблep(3046 знак., 03.10.2022 16:28)
- Вот, функции для работы с потоками Виндус - обратите внимание на lpParameter : Tyмблep(545 знак., 03.10.2022 16:42)
- По идее constexpr bind( F&& f,
Args&&... args ); у которого определены все аргументы
должен давать тип void(*)(void) и его наверное можно запихнуть в
таблицу векторов, но нужно изучать, проверять и потом бояцца, как
бэ в очередной версии компилятора не поломалось. - =AlexD=(03.10.2022 15:09)
- Мне думается, в constexpr какой-нибудь каст точно не пройдёт. - VladislavS.(03.10.2022 16:07)
- Это проблема поддержки со стороны разработчиков компилятора. Tyмблep(3046 знак., 03.10.2022 16:28)
- В мелких контроллерах, типа кортексов или AVR таблица векторов
прерываний это константные данный этапа компиляции. То есть,
компилятор должен знать адрес на момент линковки. Всякие
динамически создаваемые объекты плохо тут ложатся. Получается, либо
установка векторов в рантайме с переносом таблицы векторов в RAM
(если такая возможность есть). Либо прослойка просто через таблицу
в RAM (если возможности перенести таблицу нет). В обоих случаях
накладные расходы. VladislavS.(144 знак., 03.10.2022 14:35)