|
Система, управляемая событиями и SST(super-simple tasker), Выделено из "ООП. Классы и динамические объекты" |
|
|
|
Sep 7 2016, 09:07
|
Профессионал
    
Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046

|
Недавно я начал пользоваться динамической памятью. Раньше пользовался только статикой, то есть placement new. Со статикой сложно работать с такими шаблонами, как фабрика обьектов, временные задачи итд. Программирую в основном под cortex-m3/m4 Код реализации аллокатора вышел довольно простым и быстрым, критически секции есть, но очень короткие(там прочитать/записать пару байт). При чем я не использую этих всяких монстров под названием RTOS, у меня свой простейший асинхронный планировщик задач, занимает строк 300 кода с комментариями(погуглите запрос "super simple tasker", поймете что это). В купе с динамическим аллокатором, variable element-size queue, новыми фишками C++ (шаблоны, лямбда-функции, auto) получается очень простой, безопасный и мощный фреймворк. Вспоминаю работу с классическими Thread-ами(с ихними стеками - куча кода было написано для анализа программ на предмет нужного обьема стека, и теперь эта куча кода отправлена на мусорку) со всеми этими тяжеленными мютексами, семафорами, вечными циклами как страшный сон.
Если кому интересно - расскажу и покажу как это все работает.
|
|
|
|
Сообщений в этой теме
brag Система, управляемая событиями и SST(super-simple tasker) Sep 7 2016, 09:07 brag Та мощный проц запросто под ФП идет, но я работаю ... Sep 27 2016, 15:09 brag ЦитатаВозьмите любую MT задачу размером более 1000... Sep 27 2016, 15:57 XVR Цитата(brag @ Sep 27 2016, 18:57) Этих пр... Sep 27 2016, 16:14 brag ЦитатаТ.е. SST это такая смирительная рубашка, кот... Sep 27 2016, 16:26 XVR Цитата(brag @ Sep 27 2016, 19:26) Равно, ... Sep 27 2016, 17:53 brag Ну такое переливание делается как-то так. deadlock... Sep 27 2016, 19:40 XVR Цитата// or process an error in another way
... Sep 28 2016, 07:05 brag ЦитатаИменно, что 'another way'. Нужно пос... Sep 28 2016, 07:36 XVR Цитата(brag @ Sep 28 2016, 10:36) При про... Sep 28 2016, 08:17 sigmaN Я думал любой deadlock есть результат бага в прогр... Sep 28 2016, 08:23 brag ЦитатаОригинальная программа даст deadlock. Т.е. с... Sep 28 2016, 09:00 XVR Цитата(brag @ Sep 28 2016, 12:00) Оригина... Sep 28 2016, 11:07 brag ЦитатаЭто почему не может? А работа по поллингу вм... Sep 28 2016, 13:24 XVR Цитата(brag @ Sep 28 2016, 16:24) если ес... Sep 28 2016, 14:47 brag ЦитатаЭто абсолютно не такю Чтение этого регистра ... Sep 28 2016, 16:52 XVR Цитата(brag @ Sep 28 2016, 19:52) То же с... Sep 28 2016, 20:15 brag ЦитатаЯ понимаю, что эхо с изменением тембра можно... Sep 28 2016, 21:08 XVR Цитата(brag @ Sep 29 2016, 00:08) Вот это... Sep 29 2016, 13:27 brag При синхронизации на мютексах не столько страшен d... Sep 29 2016, 12:31 brag ЦитатаВот именно - заставляет. Это механизм принуд... Sep 29 2016, 16:12 XVR Цитата(brag @ Sep 29 2016, 19:12) С чего ... Sep 30 2016, 09:00  amaora Цитата(XVR @ Sep 30 2016, 12:00) Ну как т... Sep 30 2016, 14:39   XVR Цитата(amaora @ Sep 30 2016, 17:39) Нужно... Sep 30 2016, 19:48    amaora Цитата(XVR @ Sep 30 2016, 22:48) Это зави... Sep 30 2016, 20:48     XVR Цитата(amaora @ Sep 30 2016, 23:48) Нужен... Oct 1 2016, 13:34 brag ЦитатаОтсюда следует, что ниша чистого SST - это м... Sep 29 2016, 19:35 brag ЦитатаДля этого обычно используют примитивы захват... Sep 30 2016, 20:21 brag ЦитатаВопрос был не про SST, на нем задача решится... Sep 30 2016, 21:46 amaora Цитата(brag @ Oct 1 2016, 00:46) Смысл в ... Oct 1 2016, 18:28 brag ЦитатаВ С их нет. Они есть в gcc, но это его собст... Oct 1 2016, 16:33 brag С мютексом можно работать, но если начнутся вложен... Oct 1 2016, 19:15 amaora Цитата(brag @ Oct 1 2016, 22:15) С мютекс... Oct 1 2016, 19:37 brag На кортексе можно обойтись без запрета прерываний,... Oct 2 2016, 10:33 brag В процессе написания очередного проекта столкнулся... Oct 10 2016, 17:09 DASM А автор тем временем вытяснющую блокирующую в комл... Dec 6 2017, 16:21 AHTOXA Дайте, пожалуйста, ссылочку, чтобы по всей теме не... Dec 6 2017, 21:17 DASM https://www.state-machine.com Dec 7 2017, 06:05 AHTOXA Благодарю. Dec 7 2017, 15:29 DASM Я потихоньку начинаю проникаться сабжем, начну на ... Dec 7 2017, 20:22 DASM brag, а Вы дин. памятью пользуетесь? Выкинув эти т... Dec 9 2017, 05:06
3 страниц
< 1 2 3
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|