-
- Существует понятие "размещающий new" (в С должен быть аналог), для
создания объекта по нужному адресу. Также рекомендую использовать
паттерн синглтон ( в С тоже можно). Использование new в
микроконтроллерах нужно редко, обычно там, где заранее неизвестен
размер данных, например в TCP/IP стеках, или графических стеках. evgeniy1294(140 знак., 18.02.2022 19:49 - 19:52)
- В мелких TCP/IP стеках принято использовать пул буферов
фиксированного размера. Оно, во-первых, быстро работает, во-вторых
всегда понятно сколько есть места. - LightElf(18.02.2022 19:52)
- Угу, я этим и пользуюсь обычно. Надежно. - evgeniy1294(18.02.2022 19:52)
- В мелких TCP/IP стеках принято использовать пул буферов
фиксированного размера. Оно, во-первых, быстро работает, во-вторых
всегда понятно сколько есть места. - LightElf(18.02.2022 19:52)
- free будет? - abivan(18.02.2022 18:30)
- Не free не будет. Чтобы незаконтачится решил расписать дефайнами... IBAH(913 знак., 18.02.2022 19:34 - 21:33)
- Думаю, немного магии X-macro улучшило бы эстетику этой простыни. А
лучше расскажите, что делаете, а мы расскажем, как это сделать
красиво. SciFi(1 знак., 18.02.2022 20:06, ссылка)
- +1. Из зала кричат "подробности давай!". В том смысле, что сама потребность выделять в одном месте несколько массивов разной длины выглядит странно. - LightElf(18.02.2022 22:03)
- Это библиотечное решение. Заполняем в хидере табличку, генерируем
код. IBAH(117 знак., 18.02.2022 20:24)
- Библиотечные решения так не делаются, есть несколько базовых С-шных подходов: evgeniy1294(737 знак., 19.02.2022 10:58)
- Эта пиздец кокойты :) Шо эта за
диджейблоки, шо эта за нафиг? - LightElf(18.02.2022 19:41)- +1 Я не понял смысла в этом, а выводы не видя всей картины сделать
не могу. - evgeniy1294(18.02.2022 19:56)
- Варианты прошивки с разными опциями и общим исходником, ИМХО. - SciFi(18.02.2022 19:58)
- Это я понял, а вот зачем такая странная реализация - нет. - evgeniy1294(18.02.2022 20:07)
- автор сам написал: Mahagam(1 знак., 18.02.2022 19:57, ссылка)
- Варианты прошивки с разными опциями и общим исходником, ИМХО. - SciFi(18.02.2022 19:58)
- +1 Я не понял смысла в этом, а выводы не видя всей картины сделать
не могу. - evgeniy1294(18.02.2022 19:56)
- Думаю, немного магии X-macro улучшило бы эстетику этой простыни. А
лучше расскажите, что делаете, а мы расскажем, как это сделать
красиво. SciFi(1 знак., 18.02.2022 20:06, ссылка)
- Не free не будет. Чтобы незаконтачится решил расписать дефайнами... IBAH(913 знак., 18.02.2022 19:34 - 21:33)
- Использую кучу tlsf, в extra options линкера IAR делаю перенаправление на всякий случай Oman(1469 знак., 18.02.2022 18:10)
- В IAR ARM всё из коробки работает. И malloc, и new. Главное размер
кучи в скрипте линкера не забыть указать. - VladislavS.(18.02.2022 18:01)
- Работает из коробки, пока в программе не используется RTOS с
вытесняющей многозадачностью и работа с динамической памятью в
нескольких процессах. Чтобы и в таком случае работало приходится
принимать дополнительные меры. - AlexG(19.02.2022 07:00)
- Все необходимые меры там уже предусмотрены. ЫЫyкпy(2 знак., 19.02.2022 18:20, ссылка, ссылка)
- Чтобы эти меры работали их нужно целенаправленно задействовать. AlexG(75 знак., 19.02.2022 18:21)
- Все необходимые меры там уже предусмотрены. ЫЫyкпy(2 знак., 19.02.2022 18:20, ссылка, ссылка)
- Работает из коробки, пока в программе не используется RTOS с
вытесняющей многозадачностью и работа с динамической памятью в
нескольких процессах. Чтобы и в таком случае работало приходится
принимать дополнительные меры. - AlexG(19.02.2022 07:00)
- malloc() не работает? - SciFi(18.02.2022 17:48)
- Еще не пробовал, читаю IBAH(1 знак., 18.02.2022 17:51, ссылка)
- Существует понятие "размещающий new" (в С должен быть аналог), для
создания объекта по нужному адресу. Также рекомендую использовать
паттерн синглтон ( в С тоже можно). Использование new в
микроконтроллерах нужно редко, обычно там, где заранее неизвестен
размер данных, например в TCP/IP стеках, или графических стеках. evgeniy1294(140 знак., 18.02.2022 19:49 - 19:52)