Articles of Multithreading

Warum werden wait () und notify () in der Object-class von Java deklariert?

Warum werden die Methoden wait() und notify() in der Object class und nicht in der Thread class deklariert?

Happens-Before-Beziehungen mit flüchtigen Feldern und synchronisierten Blöcken in Java und deren Auswirkungen auf nicht-flüchtige Variablen?

Ich bin immer noch ziemlich neu im Begriff Threading und versuche mehr darüber zu verstehen. Vor kurzem stieß ich auf einen Blog-Beitrag über Was Volatile Mittel in Java von Jeremy Manson, wo er schreibt: Wenn ein Thread in eine flüchtige Variable schreibt und ein anderer Thread dieses Schreiben sieht, teilt der erste Thread dem zweiten […]

Doppeltes Checked Locking in Singleton

Hier ist meine benutzerdefinierte class für Singleton-Muster. In diesem Code verwende ich die doppelte Überprüfung wie unten beschrieben. Während ich viele Beiträge in einer Quelle lese, sagen sie, dass doppelte Überprüfung nützlich ist, weil sie verhindert, dass zwei gleichzeitige Threads gleichzeitig zwei verschiedene Objekte erzeugen. public class DoubleCheckLocking { public static class SearchBox { private […]

C # Thread-Beendigung und Thread.Abort ()

In MSDN beschreibt die Beschreibung der Thread.Abort () -Methode: “das Aufrufen dieser Methode beendet normalerweise den Thread”. Warum nicht immer? In welchen Fällen wird der Thread nicht beendet? Gibt es eine andere Möglichkeit, Threads zu beenden?

Atom UPDATE .. SELECT in Postgres

Ich baue einen Warteschlangenmechanismus auf. Es gibt Datenzeilen, die verarbeitet werden müssen, und ein Status-Flag. Ich verwende ein update .. returning Klausel, um es zu verwalten: UPDATE stuff SET computed = ‘working’ WHERE id = (SELECT id from STUFF WHERE computed IS NULL LIMIT 1) RETURNING * Ist das verschachtelte Auswahlteil das gleiche Schloss wie […]

Ist es sicher, Werte von einer java.util.HashMap aus mehreren Threads zu erhalten (keine Änderung)?

Es gibt einen Fall, in dem eine Map erstellt wird und nach der Initialisierung wird sie nie wieder geändert. Es wird jedoch nur über get (key) auf mehrere Threads zugegriffen. Ist es sicher, auf diese Weise eine java.util.HashMap zu verwenden? (Derzeit verwende ich glücklicherweise eine java.util.concurrent.ConcurrentHashMap , und habe keine messbare Notwendigkeit, die performance zu […]

Abrufen der Thread-ID aus einem Thread

In C # beim Debuggen von Threads können Sie beispielsweise die ID jedes Threads sehen. Ich konnte keinen Weg finden, den gleichen Thread programmatisch zu bekommen. Ich konnte nicht einmal die ID des aktuellen Threads (in den Eigenschaften von Thread.currentThread ) Thread.currentThread . Also, ich frage mich, wie Visual Studio die IDs der Threads erhält, […]

Verwenden von ThreadPool.QueueUserWorkItem in ASP.NET in einem Szenario mit hohem Datenverkehr

Ich hatte immer den Eindruck, dass die Verwendung des ThreadPools für (sagen wir mal nicht kritische) kurzlebige Hintergrundaufgaben als Best Practice galt, sogar in ASP.NET, aber dann stieß ich auf diesen Artikel , der etwas anderes vermuten lässt Argument, dass Sie den ThreadPool verlassen sollten, um mit ASP.NET-bezogenen Anfragen umzugehen. So habe ich bisher kleine […]

Thread-Pooling in C ++ 11

Relevante Fragen : Über C ++ 11: C ++ 11: Std :: Thread gepoolt? Wird async (launch :: async) in C ++ 11 Thread-Pools überflüssig machen, um teure Threads zu vermeiden? Über Boost: C ++ boost Thread wiederverwendet Threads boost :: thread und erstelle einen Pool von ihnen! Wie erhalte ich einen Pool von Threads, […]

“Java DateFormat ist nicht threadsicher” was bringt das?

Jeder warnt davor, dass Java DateFormat nicht threadsicher ist und ich verstehe das Konzept theoretisch. Aber ich bin nicht in der Lage zu visualisieren, welche tatsächlichen Probleme wir dadurch haben können. Angenommen, ich habe ein DateFormat-Feld in einer class und dasselbe wird in verschiedenen Methoden in der class (Formatierungsdaten) in einer Multi-Thread-Umgebung verwendet. Wird dies […]