|
|
 |
Ответов
|
Jun 24 2012, 06:47
|

Нечётный пользователь.
     
Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417

|
Цитата(Axel @ Jun 24 2012, 07:01)  А как Вы это делаете? Ну выше ж написано - pool[ MAX( ) ] Т.е. цепочака макросов MAX с sizeof() классов, на этом форуме вроде уже не раз placement new обсуждался.. Можно и как-то так, чтобы длинные MAX не писать и условной компиляцией включать/выключать применение (не помню, писал ли раньше): Код #define SIZE_IN(class, type) ((sizeof(class)+sizeof(type)-1)/sizeof(type))
#define POOL_PLACE(class) uint8_t place_for_##class [ sizeof(class) ]
#include "A.h"
#ifdef MODE_B_USED # include "B.h" #endif
#include "C.h"
union pool1_member_sizes { POOL_PLACE(A); #ifdef MODE_B_USED POOL_PLACE(B); #endif POOL_PLACE(C); };
// автоматически получаем MAX всех размеров uint32_t pool1[ SIZE_IN(pool1_member_sizes,uint32_t) ];
--------------------
Ну, я пошёл… Если что – звоните…
|
|
|
|
|
Jun 24 2012, 07:45
|
Местный
  
Группа: Свой
Сообщений: 480
Регистрация: 21-11-04
Пользователь №: 1 188

|
Цитата(ReAl @ Jun 24 2012, 09:47)  Можно и как-то так... Спасибо, технично, уже включил в код.
|
|
|
|
Сообщений в этой теме
Beginning Кто какую реализацию использует для распределения памяти на cortex? Jun 19 2012, 13:48 shmur Пользуемся tlsf, пока всем устраивает. Jun 19 2012, 13:59 Сергей Борщ Имени zltigo. И на Cortex и на ARM7 Jun 19 2012, 14:34 Beginning Блин, нашёл тему близнец тыц Можно склеить. Jun 19 2012, 14:51 IgorKossak Склеил бы, да руки не достают. Тем более, что здес... Jun 19 2012, 17:11 brag Вот и моя близняшка http://electronix.ru/forum/ind... Jun 19 2012, 22:28 Beginning Я тут немного поразмыслил и пришел к выводу что де... Jun 20 2012, 07:18 scifi Цитата(Beginning @ Jun 20 2012, 11:18) Ес... Jun 20 2012, 07:29 Beginning Картина собственно ясна. А теперь вопрос. Стоит ли... Jun 20 2012, 07:40 jcxz Цитата(Beginning @ Jun 20 2012, 13:40) Ка... Jun 20 2012, 09:13 brag Забудьте про дефраг. Дефрагментация уместна только... Jun 20 2012, 09:40 _Pasha Если Вы можете выделить сколь-нибудь детерминирова... Jun 20 2012, 11:43 Beginning Я уже писал про **p. Придётся везде лепить. А пото... Jun 20 2012, 12:05 maksimp Практическая реализация дефрагментации без аппарат... Jun 20 2012, 17:19 Beginning Я так понимаю это компромис. Зарезервировал память... Jun 20 2012, 18:35 aaarrr Цитата(Beginning @ Jun 20 2012, 22:35) По... Jun 20 2012, 18:37 maksimp Цитата(Beginning @ Jun 20 2012, 22:35) За... Jun 21 2012, 04:10 Beginning Не ну я прикидывал, мол если например кусок не раз... Jun 20 2012, 19:12 _Pasha Цитата(Beginning @ Jun 20 2012, 22:12) Не... Jun 20 2012, 20:21 Beginning Ну хотябы, если дефрагментация началась, то её уже... Jun 20 2012, 20:35 _Pasha Цитата(Beginning @ Jun 20 2012, 23:35) Ну... Jun 21 2012, 05:12 Beginning Наверняка так и есть. Но по поводу этого я не силь... Jun 21 2012, 06:16 _Pasha Цитата(Beginning @ Jun 21 2012, 09:16) Пр... Jun 21 2012, 07:39 Beginning Я не очень понимаю выражения "не использовать... Jun 21 2012, 08:30 _Pasha Цитата(Beginning @ Jun 21 2012, 11:30) Я ... Jun 21 2012, 09:22 jcxz Цитата(Beginning @ Jun 21 2012, 14:30) Я ... Jun 22 2012, 02:45  Axel Цитата(jcxz @ Jun 22 2012, 05:45) Поэтому... Jun 22 2012, 13:39 Beginning Ну тут я вижу потенциальную проблему. Допустим пам... Jun 21 2012, 09:33 brag ЦитатаЯ уже писал про **p. Придётся везде лепить. ... Jun 21 2012, 09:58 maksimp Цитата(brag @ Jun 21 2012, 13:58) ЦитатаG... Jun 21 2012, 19:13 brag ЦитатаDeadlock - вряд ли.
легко: Поток 1 занял взя... Jun 21 2012, 22:53 brag Полностью согласен с jcxz, сам прорабатывал возмож... Jun 22 2012, 11:36 brag Цитатанесколькими альтернативными режимами
в моей ... Jun 22 2012, 17:23 Axel Цитата(brag @ Jun 22 2012, 20:23) ...и pl... Jun 23 2012, 06:33 brag Тогда уж красивее так вроде, зачем лишний макро?
И... Jun 24 2012, 09:10 ReAl Ага, щас.
Заменяем (так быстрее, чем union редакти... Jun 24 2012, 12:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|