реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> Проблема с Ring Buffer.
brag
сообщение Sep 7 2016, 17:51
Сообщение #16


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046



Цитата(smalcom @ Sep 7 2016, 20:47) *
это не кольцевой буфер.

А какой?
Или Вас смущает &(Size-1) ? Ну так в данной реализации все заточено под скорость, ессно Size должен быть степенью двойки. В коде также стоит проверка, компилятор всегда проверяет является он степенью двойки или нет:
Код
static_assert((Size&(Size-1)) == 0, "Size must be power of 2");


Иначе придется, как минимум добавлять if, а если совсем все плохо - % (остаток от деления).
Go to the top of the page
 
+Quote Post
smalcom
сообщение Sep 8 2016, 01:43
Сообщение #17


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



о, пардон.
странно как-то - следующей строки с проверкой я не увидел. пора в отпуск.
Go to the top of the page
 
+Quote Post
brag
сообщение Sep 8 2016, 07:48
Сообщение #18


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046



Цитата(smalcom @ Sep 8 2016, 04:43) *
о, пардон.
странно как-то - следующей строки с проверкой я не увидел. пора в отпуск.

Да, действительно, прошу прощения, при вставке кода в браузер и форматировании строка куда-то пропала. исправил.
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Sep 11 2016, 17:58
Сообщение #19


Профессионал
*****

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(brag @ Sep 7 2016, 13:48) *
Хм. Зачем все так сложно мудрить.....

лично для меня мудрить это
Код
template<class T, int Size> class Fifo_spsc

sm.gif
мне бы по простому. по сишному. sm.gif
Go to the top of the page
 
+Quote Post
brag
сообщение Sep 11 2016, 22:06
Сообщение #20


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 2-12-06
Из: Kyiv, Ukraine
Пользователь №: 23 046



Цитата(Jenya7 @ Sep 11 2016, 20:58) *
мне бы по простому. по сишному

переписывать под каждый тип данных все функции работы с очередью
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 17:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.01376 секунд с 7
ELECTRONIX ©2004-2016