У меня есть входящий поток сообщений, и я хочу окно, которое позволяет пользователю прокручивать сообщения. < /p>
Это мое текущее мышление: < /p>
[*] Входящие сообщения заходят в однородную очередь одного потребителя < /li>
Поток считывает их и помещает их в круглый буфер с последовательным id < /li>
Таким образом, я мог бы иметь несколько входящих потоков, безопасно размещенных в круговом буфере, и он разместит вход < /li>
Mutex для координации круглого буфера между UI и поток
[*] Два уведомления от потока до UI One для первого идентификатора и одно для последнего идентификатора в буфере, когда они либо меняются.
Это позволяет пользовательскому интерфейсу выяснить, что он может отобразить, какие части круглого буфера он нуждается в доступе, удаляет перезаписанные сообщения. Он доступ к сообщениям, необходимым для заполнения окна в его текущем размере и положении прокрутки. UI. Он будет генерироваться с высокой частотой. Они могут быть в очереди или иным образом дроссель; Задержка не должна влиять на первый идентификатор, но задержки при обработке последнего идентификатора могут вызвать проблемы в угловых случаях, таких как просмотр самого конца полного буфера , если пользовательский интерфейс не сделает копию отображающих сообщений, которые отображаются, которые отображают, что Я хотел бы избежать. < /P>
Это звучит как правильный подход? Какие -то изменения, которые могут сделать его немного более вкусным?
Подробнее здесь: https://stackoverflow.com/questions/160 ... -real-time
Просмотр данных в круговом буфере в режиме реального времени ⇐ C++
Программы на C++. Форум разработчиков
-
Anonymous
1740520383
Anonymous
У меня есть входящий поток сообщений, и я хочу окно, которое позволяет пользователю прокручивать сообщения. < /p>
Это мое текущее мышление: < /p>
[*] Входящие сообщения заходят в однородную очередь одного потребителя < /li>
Поток считывает их и помещает их в круглый буфер с последовательным id < /li>
Таким образом, я мог бы иметь несколько входящих потоков, безопасно размещенных в круговом буфере, и он разместит вход < /li>
Mutex для координации круглого буфера между UI и поток
[*] Два уведомления от потока до UI One для первого идентификатора и одно для последнего идентификатора в буфере, когда они либо меняются.
Это позволяет пользовательскому интерфейсу выяснить, что он может отобразить, какие части круглого буфера он нуждается в доступе, удаляет перезаписанные сообщения. Он доступ к сообщениям, необходимым для заполнения окна в его текущем размере и положении прокрутки. UI. Он будет генерироваться с высокой частотой. Они могут быть в очереди или иным образом дроссель; Задержка не должна влиять на первый идентификатор, но задержки при обработке последнего идентификатора могут вызвать проблемы в угловых случаях, таких как просмотр самого конца полного буфера , если пользовательский интерфейс не сделает копию отображающих сообщений, которые отображаются, которые отображают, что Я хотел бы избежать. < /P>
Это звучит как правильный подход? Какие -то изменения, которые могут сделать его немного более вкусным?
Подробнее здесь: [url]https://stackoverflow.com/questions/1606952/viewing-data-in-a-circular-buffer-in-real-time[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия