Python Glossary English

все Python 3queueпонятие

queue.LifoQueue

очереди

Потокобезопасная очередь LIFO (стек): get() возвращает последний добавленный элемент.

Синтаксис

q = queue.LifoQueue(maxsize=0)

Интерфейс тот же, что у Queue (put, get, task_done, join), меняется только порядок выдачи. Для стека в одном потоке достаточно обычного list с append/pop — блокировки LifoQueue там только тормозят. Нужна, когда несколько потоков делят стек задач, например при обходе в глубину.

Примеры

import queue
q = queue.LifoQueue()
for x in 'abc':
    q.put(x)
print(q.get(), q.get(), q.get())  # → c b a

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности