Articles of Multithreading

Wie erhält man den JNI-Schnittstellenzeiger (JNIEnv *) für asynchrone Aufrufe?

Ich habe gelernt, dass der JNI-Schnittstellenzeiger (JNIEnv *) nur im aktuellen Thread gültig ist. Angenommen, ich habe einen neuen Thread in einer nativen Methode gestartet. Wie kann es Ereignisse asynchron an eine Java-Methode senden? Da dieser neue Thread keine Referenz von (JNIEnv *) haben kann. Speichern einer globalen Variable für (JNIEnv *) wird offenbar nicht […]

Was bedeutet thread_local in C ++ 11?

Ich bin verwirrt mit der Beschreibung von thread_local in C ++ 11. Mein Verständnis ist, jeder Thread hat eine eindeutige Kopie von lokalen Variablen in einer function. Auf die globalen / statischen Variablen kann von allen Threads zugegriffen werden (möglicherweise synchronisierter Zugriff unter Verwendung von Sperren). Und die Variablen thread_local sind für alle Threads sichtbar, […]

Wie kann ein Thread, der auf dem Socket-IO-Betrieb blockiert, sofort beendet werden?

Im Kontext von Java erstelle ich einen neuen Thread, um die Netzwerkeingabe zu lesen, wenn ich ein GUI-Fenster öffne, und wenn ich das Fenster schließe, möchte ich die Socket-Ressource freigeben und den Thread sofort beenden. Jetzt benutze ich die Methode setSoTimeout, aber ich möchte nicht auf die Timeout-Ausnahme warten. Könnte irgendjemand einen Vorschlag geben? Vielen […]

Wie stellt man die CPU-Affinität eines bestimmten Pthreads ein?

Ich möchte die CPU-Affinität eines bestimmten Pthread angeben. Alle Referenzen, die ich bisher gefunden habe, betreffen die Einstellung der CPU-Affinität eines processes (pid_t) und nicht eines Threads (pthread_t). Ich habe einige Experimente ausprobiert, die pthread_t passieren lassen und wie erwartet scheitern sie. Versuche ich etwas Unmögliches zu tun? Wenn nicht, können Sie bitte einen pointers […]

Wie rufe ich eine Methode mit einem separaten Thread in Java auf?

Lassen Sie uns sagen, ich habe eine Methode doWork() . Wie rufe ich es aus einem separaten Thread (nicht den Hauptthread).

Ist eine HashMap Thread-sicher für verschiedene Schlüssel?

Wenn ich mit zwei Threads auf eine HashMap zugreifen kann, aber gleichzeitig garantiere, dass sie niemals auf den gleichen Schlüssel zugreifen, könnte das noch zu einer Race Condition führen?

Asynchron oder Multithreading – Gibt es einen Unterschied?

Erstellt ein asynchroner Aufruf immer einen neuen Thread? Was ist der Unterschied zwischen den beiden? Wird bei einem asynchronen Aufruf immer ein neuer Thread erstellt oder verwendet? Wikipedia sagt : In der Computerprogrammierung sind asynchrone Ereignisse diejenigen, die unabhängig vom Hauptprogrammablauf auftreten. Asynchrone Aktionen sind Aktionen, die in einem nicht blockierenden Schema ausgeführt werden, wodurch […]

Was bedeutet threadsafe?

Kürzlich habe ich versucht, auf ein Textfeld aus einem Thread (außer dem UI-Thread) zuzugreifen, und eine Ausnahme wurde ausgetriggers. Es sagte etwas über den “Code, der nicht threadsicher ist” und so schrieb ich einen Delegaten (Probe von MSDN half) und nannte es stattdessen. Aber ich habe nicht ganz verstanden, warum der zusätzliche Code notwendig war. […]

Wann wird AtomicReference in Java verwendet?

Wann verwenden wir AtomicReference? Ist es erforderlich, Objekte in allen Multithread-Programmen zu erstellen? Geben Sie ein einfaches Beispiel an, in dem AtomicReference verwendet werden soll.

Wann sollte der Thread-Pool in C # verwendet werden?

Ich habe versucht, Multithreading-Programmierung in C # zu lernen, und ich bin verwirrt, wenn es am besten ist, einen Thread-Pool zu verwenden oder meine eigenen Threads zu erstellen. Ein Buch empfiehlt, einen Thread-Pool nur für kleine Aufgaben zu verwenden (was auch immer das bedeutet), aber ich kann keine wirklichen Richtlinien finden. Was sind einige Überlegungen, […]