Tag: blockingqueue

Eine queue-Datenstruktur, die, die wartet (unterbricht den aktuellen thread) für die queue nicht leer ist, wenn das abrufen eines Elements und Raum zur Verfügung, in der Warteschlange beim speichern eines Elements.

Erstellen einer Warteschlange Blockiert

Anzahl der Antworten 2 Antworten
Manchmal ist diese Umsetzung und Durchführung von BlockingQueue funktioniert einfach. Manchmal ist es segfaults. Irgendeine Idee warum? #include <thread> using std::thread; #include <mutex> using std::mutex; #include <iostream> using std::cout; using std::endl; #include <queue> using std::queue; #include <string>

Ist das hinzufügen von Aufgaben zu BlockingQueue von ThreadPoolExecutor ratsam?

Anzahl der Antworten 5 Antworten
In der JavaDoc für ThreadPoolExecutor ist unklar, ob es akzeptabel ist, fügen Sie die Aufgaben direkt auf die BlockingQueue sichern der Vollstrecker. Die docs sagen aufrufen executor.getQueue() "soll in Erster Linie für debugging und monitoring". Ich Baue

implementieren Sie-Ihre-eigenen-blocking queue in java

Anzahl der Antworten 3 Antworten
Ich weiß, diese Frage wurde gestellt und beantwortet viele Male zuvor, aber ich konnte einfach nicht herausfinden, einen trick auf die Beispiele rund um das internet, wie diese oder dass ein. Beide Lösungen prüfen, für die leere

producer/consumer-Arbeit Warteschlangen

Anzahl der Antworten 3 Antworten
Ich bin Ringen um die beste Art der Umsetzung meiner Bearbeitung pipeline. Meine Produzenten feed Arbeit auf eine BlockingQueue. Auf der consumer-Seite, ich Umfrage der Warteschlange, wickeln, was ich in ein Runnable task, und senden Sie es

So entfernen Sie Elemente aus einer Warteschlange in Java mit einer Schleife

Anzahl der Antworten 3 Antworten
Ich habe eine Daten-Struktur wie diese: BlockingQueue mailbox = new LinkedBlockingQueue(); Ich versuche, dies zu tun: for(Mail mail: mailbox) { if(badNews(mail)) { mailbox.remove(mail); } } Offensichtlich der Inhalt der Schleife stören die Schranken, und ein Fehler wird

Mehrere Produzent, Mehrere Konsumenten-Multithreading-Java

Anzahl der Antworten 3 Antworten
Ich versuche Mehrere Produzent - Mehrere Verbraucher bei Erzeuger-Verbraucher-problem. Ich bin mit BlockingQueue für die gemeinsame Warteschlange zwischen mehreren Erzeugern/Verbrauchern. Unten ist mein code. Produzent import java.util.concurrent.BlockingQueue; public class Producer implements Runnable { private BlockingQueue inputQueue; private

ScheduledExecutorService mit variabler Verzögerung

Anzahl der Antworten 5 Antworten
Angenommen ich habe eine Aufgabe, die das ziehen von Elementen aus einer von java.util.gleichzeitige.BlockingQueue und Verarbeitung. public void scheduleTask(int delay, TimeUnit timeUnit) { scheduledExecutorService.scheduleWithFixedDelay(new Task(queue), 0, delay, timeUnit); } Wie kann ich das planen /umplanen von der

Wenn zu bevorzugen LinkedBlockingQueue über ArrayBlockingQueue?

Anzahl der Antworten 3 Antworten
Wann lieber LinkedBlockingQueue über ArrayBlockingQueue? Welche Datenstruktur zu verwenden, die unter LinkedBlockingQueue und ArrayBlockingQueue wenn: Sie wollen ein effizientes Lesen und schreiben sollte geringerem Speicherbedarf Obwohl es eine ähnliche Frage, aber es nicht die Tatsache hervorheben, dass

Java BlockingQueue mit Batchverarbeitung?

Anzahl der Antworten 4 Antworten
Ich bin daran interessiert, eine Daten-Struktur identisch mit der Java-BlockingQueue, mit der Ausnahme, dass Sie müssen in der Lage sein, um batch-Objekte in der Warteschlange. In anderen Worten, ich möchte, dass der Produzent in der Lage, die

Wie zu blockieren, bis eine BlockingQueue leer ist?

Anzahl der Antworten 6 Antworten
Ich bin auf der Suche nach einem Weg zu blockieren, bis ein BlockingQueue leer ist. Ich weiß, dass es in einer multithreaded Umgebung, wie lange, wie es die Produzenten setzen Elemente in der BlockingQueue kann es Situationen

Blocking-queue und Multithread-Verbraucher, wie zu wissen, Wann zu stoppen

Anzahl der Antworten 6 Antworten
Ich habe eine single-thread-Produzent das schafft einige task-Objekte, die werden dann aufgenommen in eine ArrayBlockingQueue (die ist fester Größe). Starte ich auch eine multi-threaded-Verbraucher. Dieser ist aufgebaut wie ein fixed thread pool (Executors.newFixedThreadPool(threadCount);). Ich habe dann reichen

Warteschlange-Voll -, Auf die Tiefe der Warteschlange Blockieren, Klärungsbedarf

Anzahl der Antworten 3 Antworten
Beim Auffüllen der Warteschlange aus dem Inhalt der Datei, Tiefe nicht scheinen, um jemals zu erhöhen, da die Elemente nicht in dieser Umsetzung. BlockingQueue<String> q = new SynchronousQueue<String>(); ... fstream = new FileInputStream("/path/to/file.txt"); ... while ((line =

Was ist der Unterschied zwischen ArrayBlockingQueue und LinkedBlockingQueue

Anzahl der Antworten 4 Antworten
In welchen Szenarien ist es besser, eine ArrayBlockingQueue und Wann ist es besser, eine LinkedBlockingQueue? Wenn LinkedBlockingQueue Standard-Kapazität ist gleich der MAX Integer, ist es wirklich hilfreich, um es als BlockingQueue mit Standard-Kapazität? InformationsquelleAutor der Frage Java_Jack

"Schließen" einer blockierenden Warteschlange

Anzahl der Antworten 10 Antworten
Ich bin mit java.util.gleichzeitige.BlockingQueue in einer sehr einfachen Erzeuger-Verbraucher-Szenario. E. g. diese pseudo-code zeigt die consumer-Teil: class QueueConsumer implements Runnable { @Override public void run() { while(true) { try { ComplexObject complexObject = myBlockingQueue.take(); //do something with

Java BlockingQueue take () vs poll ()

Anzahl der Antworten 2 Antworten
Beim Verzehr von Werten aus einer Warteschlange in eine Endlosschleife-was effizienter wäre: 1) Blockieren, die auf die Warteschlange, bis ein Wert über nehmen() while (value = queue.take()) { doSomething(value); } 2) Schlafen für n Millisekunden und die

Wie bekomme ich ThreadPoolExecutor, um die Threads vor dem Einreihen in die Warteschlange zu erhöhen?

Anzahl der Antworten 8 Antworten
Ich war frustriert seit einiger Zeit mit dem Standard-Verhalten von ThreadPoolExecutor dem Rücken der ExecutorService thread-pools, die so viele von uns verwenden. Zitat aus den Javadocs: Wenn es mehr als corePoolSize aber weniger als maximumPoolSize threads laufen,

Gibt es in C ++ 11 gleichzeitig Container?

Anzahl der Antworten 5 Antworten
Insbesondere bin ich auf der Suche für eine blockierende Warteschlange. Gibt es so etwas in C++11? Wenn nicht, was sind meine anderen Optionen? Ich wirklich nicht wollen, zu gehen, um die thread-Ebene selbst nicht mehr. Viel zu

Wann sollte ich SynchronousQueue verwenden?

Anzahl der Antworten 4 Antworten
new SynchronousQueue() new LinkedBlockingQueue(1) Was ist der Unterschied? Wann sollte ich verwenden SynchronousQueue gegen LinkedBlockingQueue mit Kapazität 1? InformationsquelleAutor der Frage Anton | 2011-12-21