![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
AD |
![]()
Сообщение
#1
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Есть ли в библиотеках Qt, boost реализация потоконезависимых очередей? Можно ли применить QList? Если нет, есть ли в инете подобное? Поискал сам, пока ничего путного не видел. Может быть кто-то уже видел что-то подобное?
|
|
|
![]() |
BRE |
![]()
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
Что имеется ввиду под "потоконезависимые"?
QList использовать можно, если к одному экземпляру списка нужен доступ на запись из разных потоков, то придется использовать механизмы синхронизации. Что вообще требуется от этой очереди? |
|
|
AD |
![]()
Сообщение
#3
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Что имеется ввиду под "потоконезависимые"? QList использовать можно, если к одному экземпляру списка нужен доступ на запись из разных потоков, то придется использовать механизмы синхронизации. Что вообще требуется от этой очереди? Насколько я понимаю, под потоконезависимыми подразумевается, скорее всего, когда механизм синхронизации происходят внутри реализации очереди, хотя я лично смутно это себе представляю. Но такое в принципе возможно, когда синхронизация происходит внутри реализации? |
|
|
BRE |
![]()
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
AD |
![]()
Сообщение
#5
|
Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2003 Регистрация: 4.2.2008 Из: S-Petersburg Пользователь №: 84 Спасибо сказали: 70 раз(а) Репутация: ![]() ![]() ![]() |
Конечно возможно. Но для этого нужно определиться какими свойствами эта очередь должна обладать. Например, что за свойства такие особенные? Насколько я знаю, ее определение из вики вполне оправдывает все ее особенности: Цитата О́чередь — структура данных с дисциплиной доступа к элементам «первый пришёл — первый вышел» (FIFO, First In — First Out). Добавление элемента (принято обозначать словом enqueue — поставить в очередь) возможно лишь в конец очереди, выборка — только из начала очереди (что принято называть словом dequeue — убрать из очереди), при этом выбранный элемент из очереди удаляется. Ну а то, что реализация может быть на связном списке, на массиве или еще как-то, то это я знаю! |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 8:06 |