Предположим, у меня есть фоновый работающий поток, который будет принимать события из очереди
public class Consumer implements Runnable {
BlockingQueue<Object> queue = new LinkedBlockingQueue<>();
@Override
public void run() {
while (!Thread.currentThread().isInterrupted()) {
queue.take();
}
}
}
Я знаю, что можно реализовать это просто так, но есть ли причудливый способ сделать то же самое, используя kotlin сопрограмм? Я искал его, но не смог ничего найти.
В kotlin Я также хотел бы использовать Channel<E>
из библиотеки сопрограмм вместо BlockingQueues
, если это возможно ,