|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.08.2017, 12:03 | #21 | |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 155
|
Цитата:
Вот выдержка из википедии Добавление элемента (принято обозначать словом enqueue — поставить в очередь) возможно лишь в конец очереди, выборка — только из начала очереди (что принято называть словом dequeue — убрать из очереди), при этом выбранный элемент из очереди удаляется. Последний раз редактировалось goto ∞; 29.08.2017 в 12:05. |
|
29.08.2017, 12:06 | #22 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
А где я говорил о выборке не из начала?
|
29.08.2017, 12:18 | #23 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 155
|
|
29.08.2017, 12:22 | #24 | ||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Цитата:
Цитата:
|
||
29.08.2017, 12:26 | #25 | |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 155
|
Цитата:
Добавление элемента (принято обозначать словом enqueue — поставить в очередь) возможно лишь в конец очереди, выборка — только из начала очереди (что принято называть словом dequeue — убрать из очереди), при этом выбранный элемент из очереди удаляется. |
|
29.08.2017, 12:29 | #26 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
goto ∞
Вот смотри твой код не работает. Делаем проверку и твоя очередь переполнятся. Хотя не должна так, как я добавляю и тут же удаляю. Поэтому очередь и надо делать со смещением. Код:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
29.08.2017, 12:34 | #27 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,709
|
Покажите, где мой пример противоречит цитате? Если вы идиот, давайте разжуем:
1. Есть очередь на 4 элемента: *1 2 3 4. Звездочка - наш указатель на начало очереди. 2. Взяли элемент 1 из очереди, поработали с ним и вернули взад: 1 *2 3 4. Начало очереди элемент 2. 3. Завершили работу активного потока, т.е. "удалили" его. 1 Х *3 4. Пока еще все более-менее нормально, ведь фактически очередь у нас 3 4 1 X 4. Теперь следующий шаг 1 X 3 *4 |
29.08.2017, 12:39 | #28 |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
goto ∞p51x
Очередь только с 2 функциями добавление и извлечение с удалением не очень удобна практически. Поэтому обычно не так строго к этому придерживаются. Если очередь делается на основе массива, то она может наследовать все её функции. Например так сделано в очереди QT и Си#. p51x Но я считаю что для выполнения данного задания достаточно 2-х классических методов очереди. Дело в том что при удаление потока ресурсы не могут быть освобождены мгновенно. А следовательно поток должен быть перемещён в "чистилище" до освобождения от всех связей. При таком подходе и с учётом карусели полное удаление потока произойдёт когда карусель повернёт очередь так что поток будет в конце очереди и когда поток избавиться от связей которые его удерживают от полного уничтожения.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . Последний раз редактировалось Pavia; 29.08.2017 в 12:46. |
29.08.2017, 15:04 | #29 |
Форумчанин
Регистрация: 21.12.2010
Сообщений: 155
|
Циклический очередь
Код:
|
29.08.2017, 15:49 | #30 | |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Вы код-то тестировали? Хотя знаю, он не компилируется значит не тестировали. Мола написать программу, надо ещё доказать её корректность или хотя бы протестировать.
Вот ваш код я его немного протестировал. Код:
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Многократное использование потоков(пул потоков) | ProgrammistRT | Общие вопросы Delphi | 10 | 06.04.2014 13:42 |
FTP планировщик | Zloy_Doomer | Операционные системы общие вопросы | 0 | 21.05.2013 00:08 |
Планировщик | KolinRol | Помощь студентам | 1 | 15.04.2013 05:13 |
Планировщик на ассемблере | Spartiat | Помощь студентам | 0 | 04.06.2009 18:43 |
Планировщик процессов. | Артин | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 05.05.2009 23:21 |