Описание тега circular-buffer

A circular buffer is a data structure that uses a single, fixed-size buffer as if it were connected end-to-end. This structure lends itself easily to buffering data streams.
3 ответа

Существуют ли в.NET кольцевые буферы, которые могут иметь несколько потребителей?

Хотите знать, если в.NET существует кольцевой буфер, в котором есть только один модуль записи, но он может иметь несколько потребителей? Само собой разумеется, есть несколько потоков, читающих из этого буфера (но только один поток записи), поэтому р…
13 сен '11 в 08:17
1 ответ

Копирование данных в объекте C из кольцевого буфера потокобезопасным способом

Я озадачен результатом этого кода: В одном потоке я пишу в кольцевой буфер (см. Здесь реализацию кольцевого буфера): - (void)appendToRingBuffer:(Packet *)packet { int32_t length = ((PacketAudioBuffer *)packet).totalSize; void *writePointer; bytesAva…
2 ответа

Выдается исключение NullPointerException, и программа не завершается должным образом

Я создаю программу типа фондовой биржи, и пока у меня работает ввод, так что он правильно воспринимает команду от пользователя. Однако то, что он делает с входом, не работает должным образом. Первое, что меня смущает, это то, почему при запуске кода…
1 ответ

AVCaptureOutput к обратному вызову аудиоустройства через TPCircularBuffer

Я создаю AUGraph и пытаюсь получить аудио с устройства ввода с помощью метода делегата AVCaptureAudioDataOutput. Использование AVCaptureSession является следствием описанной здесь проблемы. Мне удалось создать аудио-прохождение с помощью этого метод…
01 июн '14 в 10:09
1 ответ

Кольцевой буфер Recv против простого буфера

Я работаю над клиент-серверным приложением. Мое приложение работает с пакетами переменного размера, каждый пакет имеет заголовок и полезную нагрузку переменной длины. Моя дилемма в том, что лучше всего подходит для обработки пакетов при выполнении r…
19 мар '12 в 17:29
1 ответ

Почему размер кольцевого буфера должен быть степенью 2?

Почему размер кольцевого буфера должен быть степенью 2?
10 май '12 в 04:38
4 ответа

Повышение эффективности кольцевого буфера C

Я хотел бы помочь улучшить эффективность моего кода циклического буфера. Я осмотрел stackru и обнаружил, что (почти) все темы циклических буферов касаются использования такого буфера или базовой реализации циклического буфера. Мне действительно нужн…
15 мар '12 в 10:44
1 ответ

Один потребитель, несколько производителей в c, предотвращают гонки при возобновлении после полного буфера

Я сделал кольцевой буфер с несколькими клиентами, записывающими сообщения разной длины в буфер. Сервер считывает их. Он основан на коде проблемы потребителя / производителя. Проблема в том, что когда буфер заполнен и сервер удаляет все данные из буф…
1 ответ

Повысить производительность циркулярного буфера или сортировки кучи

Мне нужно отсортировать объекты, которые поступают в процесс X, прежде чем обрабатывать их.Объект сортируется по временной отметке - 64-битному номеру.Когда время истекает (несколько миллилитров) и сортируется, процесс X начинает на них смотреть. Бо…
23 ноя '13 в 22:24
2 ответа

std::upper_bound возвращает константный итератор в константной функции-члене

Вот класс, который содержит boost::circular_buffer некоторых struct, Я делаю typedef для итераторов в содержащийся circular_buffer, Моя проблема заключается в следующем: когда doWork функция помечена constВозвращаемое значение std::upper_bound не со…
30 авг '16 в 22:50
1 ответ

Круговой буфер Qt and Boost

Я пытаюсь включить циклический буфер повышения в свой проект. Я установил Boost на свой компьютер с помощью MacPort. Я не уверен, какую библиотеку включить для надстроек, но я включил файлы заголовков. Ниже мои файлы cmake. QT += core gui TARGET = D…
07 янв '11 в 18:18
0 ответов

Обнаружение границ и сброс кругового указателя буфера в обоих направлениях

Я работаю с микроконтроллером 8051, но мой вопрос более специфичен для алгоритма. Я создал круговой буфер в памяти для случайных поступающих данных из внешних источников. Предположим, размер буфера составляет 32 байта, и я получил 34 байта данных. Д…
24 сен '18 в 01:56
2 ответа

Расчет скользящего среднего

Скользящее среднее значение, рассчитанное по круговой матрице, дает постоянную величину < 0, когда среднее значение всегда должно быть между 0 и 1 Я пишу прошивку для устройства MSP430, которое использует светодиоды и фотодиоды для обнаружения опред…
09 фев '17 в 19:14
1 ответ

C - динамическое выделение кольцевого буфера структур внутри структуры

Я пытаюсь разработать динамически распределяемый циклический буфер в C, используя две структуры. Один содержит подробную информацию, а другой по существу используется в качестве указателя от главной структуры к циклическому буферу (поскольку во врем…
07 апр '13 в 23:21
1 ответ

Стратегии смягчения эффектов опроса в кольцевых буферах

Я использую каноническую реализацию кольцевого буфера в потоке 1Reader thread/1Writer. Поскольку читатель зацикливается, когда буфер пуст [писатель зацикливается, когда буфер заполнен] и непрерывно опрашивает управляющие переменные, я вызываю pthrea…
21 май '12 в 16:48
2 ответа

Использование toString для печати Circular Queue

Я пытаюсь найти более простой способ печати очереди кольцевого массива. Вот что у меня так далеко. public class CircularArrayQueue&lt;T&gt; implements QueueADT&lt;T&gt; { private final static int DEFAULT_CAPACITY = 100; protected int front, rear, co…
0 ответов

Как вернуть указатель на память куска данных в кольцевом буфере в C?

Так что у меня есть эта программа, где она получает данные в модели клиент / сервер в Linux. У меня есть круговой буфер. Я хочу сохранить 16384 фрагмента данных и установить флаг после заполнения 16384. Затем верните указатель на этот массив после е…
26 июл '16 в 16:08
0 ответов

Почему этот круговой дизайн буфера не требует какой-либо синхронизации?

В Википедии: в разделе CircularBuffer "Трудности-> Всегда держать один слот открытым" автор не упоминает никаких требований синхронизации между потоками: Всегда держите один слот открытым Этот дизайн всегда сохраняет один слот незанятым. Полный буфе…
2 ответа

Как правильно выйти из std::thread, который может ожидать переменную std::condition_variable?

У меня есть класс, который реализует многопоточную систему производителя / потребителя, использующую мьютекс и две условные переменные для синхронизации. Производитель сигнализирует потоку потребителя, когда есть элементы для использования, а потреб…
04 янв '13 в 05:02
2 ответа

NullReferenceException в циклическом массиве / реализации буфера

Я реализую круговой массив / буфер в C#. Я получаю NullReferenceException в строке 45 и 98. Кажется, в обход моего Initialize() метод, а не настройка private int[] queue;, Учебный класс ThreadSafeCircularQueue: using System; using System.Collections…
03 фев '16 в 17:44