Was ist der Unterschied zwischen asynchronen und nicht blockierenden Anrufen? Auch zwischen blockierenden und synchronen Anrufen (mit Beispielen bitte)?
In einer einfachen Sprache (C, C ++ oder was auch immer): Ich habe die Wahl zwischen einer Reihe von Mutexen (wie das, was mir pthread gibt oder was die native Systembibliothek bietet) oder einer einzelnen für ein Objekt. Wie effizient ist es, einen Mutex zu sperren? Dh wie viele Assembler-Anweisungen …
In meinem Hauptthread habe ich eine while(listening)Schleife, die accept()mein ServerSocket-Objekt aufruft, dann einen neuen Client-Thread startet und ihn einer Sammlung hinzufügt, wenn ein neuer Client akzeptiert wird. Ich habe auch einen Admin-Thread, mit dem ich Befehle wie 'exit' ausgeben möchte, wodurch alle Client-Threads heruntergefahren, selbst heruntergefahren und der Haupt-Thread heruntergefahren …
Ich habe im Internet nach technischen Details zum Blockieren von E / A und nicht blockierenden E / A gesucht und mehrere Personen gefunden, die angaben, dass nicht blockierende E / A schneller sind als blockierende E / A. Zum Beispiel in diesem Dokument . Wenn ich blockierende E / …
Was ist der Unterschied zwischen: Asynchron , Nicht blockierend und Event-basierte Architekturen? Kann etwas sowohl asynchron als auch nicht blockierend (und ereignisbasiert ) sein? Was ist beim Programmieren am wichtigsten, um etwas zu haben: asynchron, nicht blockierend und / oder ereignisbasiert (oder alle 3)? Wenn Sie Beispiele nennen könnten, wäre …
Ich habe eine Klasse, die Objekte von a nimmt BlockingQueueund sie verarbeitet, indem sie take()in einer Endlosschleife aufruft . Irgendwann weiß ich, dass der Warteschlange keine Objekte mehr hinzugefügt werden. Wie unterbreche ich die take()Methode, damit sie nicht mehr blockiert? Hier ist die Klasse, die die Objekte verarbeitet: public class …
Ich möchte ein Programm schreiben, dessen Hauptthread einen neuen Thread zur Berechnung gibt und darauf wartet, dass er eine Zeit lang beendet wird. Wenn der untergeordnete Thread nicht in einer bestimmten Zeit beendet wird, wird eine Zeitüberschreitung festgestellt und beendet. Ich habe den folgenden Code dafür. import Control.Concurrent fibs :: …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.