libcoro  1.0
Coroutine support library for C++20

◆ close()

template<typename T , typename QueueImpl = std::queue<T>>
void coro::queue< T, QueueImpl >::close ( std::exception_ptr  e = nullptr)
inline

close the queue

closed queue means, that any awaiting coroutine immediately receives BrokenPromise. Any attempt to pop() also recives BrokenPromise when the queue is empty. In thi state, it is still possible to push and pop items but without blocking.

Parameters
eexception - you can set exception, which causes that any attempt to pop value throws this exception. With default value the queue only break promises

Definition at line 169 of file queue.h.