C#队列-我需要并发吗

时间:2019-05-06 03:37:37

标签: c#

如果有2个不同的线程进入队列和从队列中出队。为什么需要使用并发Queue。一种是退出结构,另一种是推动I。

为什么线程安全在这里很重要? 由于内部结构?

2 个答案:

答案 0 :(得分:3)

您可以必须使用使用$post->is_featured = $request->input('is_featured') ? true : false;。例如,假设两个线程正在推送和弹出同一项目。阅读线程发现队列中有一个项目,但是写入线程尚未完成写入:现在,读取线程已读取垃圾。

编辑:Alexei是正确的,您可以实现自己的方法,而不使用ConcurrentQueue。但是我建议不要这样做,因为库的实现可能比您可以创建的更好。

答案 1 :(得分:1)

我建议您function readyToPutInTheDOM(arr) { let x = document.createElement('div'); arr.map((v,i)=>{ x.innerHTML += `<h1> ${v.name}</h1> <h2>${v.age}</h2>`; }); document.body.appendChild(x); } 并发队列旨在接受多个线程读写队列,而无需显式锁定数据结构