Articles of multithreading

Come terminare istantaneamente un blocco thread sul funzionamento del socket IO?

Nel contesto di Java, creo un nuovo thread per leggere l’input di rete quando apro una finestra GUI e quando chiudo la finestra, voglio rilasciare la risorsa socket e terminare immediatamente il thread. Ora sto usando il metodo setSoTimeout, ma non voglio aspettare l’eccezione di timeout. Qualcuno potrebbe dare qualche suggerimento? Grazie!

Come ottenere il puntatore all’interfaccia JNI (JNIEnv *) per le chiamate asincrone

Ho appreso che il puntatore all’interfaccia JNI (JNIEnv *) è valido solo nel thread corrente. Supponiamo di aver iniziato una nuova discussione all’interno di un metodo nativo; come può inviare in modo asincrono eventi a un metodo Java? Poiché questo nuovo thread non può avere un riferimento di (JNIEnv *). L’archiviazione di una variabile globale […]

Cosa significa thread_local in C ++ 11?

Sono confuso con la descrizione di thread_local in C ++ 11. La mia comprensione è che ogni thread ha una copia univoca di variabili locali in una funzione. Le variabili globali / statiche sono accessibili da tutti i thread (possibilmente l’accesso sincronizzato tramite i blocchi). E le variabili thread_local sono visibili a tutti i thread […]

Come chiamare un metodo con un thread separato in Java?

Diciamo che ho un metodo doWork() . Come posso chiamarlo da un thread separato (non il thread principale).

Cosa significa “threadsafe”?

Recentemente ho provato ad accedere a una casella di testo da un thread (diverso dal thread dell’interfaccia utente) e ho lanciato un’eccezione. Ha detto qualcosa sul “codice non è thread-safe” e così ho finito per scrivere un delegato (esempio da MSDN aiutato) e chiamandolo invece. Ma anche così non capivo perché fosse necessario tutto il […]

Qual è la serratura e il concetto di rientro in generale?

Mi confondo sempre. Qualcuno potrebbe spiegare cosa significa Reentrant in diversi contesti? E perché vorresti usare il rientro e il non-rientro? Dite primitive di chiusura pthread (posix), sono rientranti o no? Quali sono le insidie ​​da evitare durante l’utilizzo? È mutex re-entrant?

Quando dovremmo usare il mutex e quando dovremmo usare il semaforo

Quando dovremmo usare il mutex e quando dovremmo usare il semaforo?

Quali risorse sono condivise tra i thread?

Recentemente, mi è stata posta una domanda in un’intervista qual è la differenza tra un processo e un thread. Davvero, non conoscevo la risposta. Ho pensato per un minuto e ho dato una risposta molto strana. I thread condividono la stessa memoria, i processi no. Dopo aver risposto a questo, l’intervistatore mi ha rivolto un […]

Quando utilizzare AtomicReference in Java?

Quando usiamo AtomicReference? È necessario creare oggetti in tutti i programmi multithread? Fornire un semplice esempio in cui dovrebbe essere utilizzato AtomicReference.

Problema con più sfere di palle rimbalzanti

Ho creato un programma che rende più palle di rimbalzo con colore, velocità e raggio casuali. Quando l’utente fa clic sullo schermo, dovrebbe apparire una nuova palla casuale e spostarsi sullo schermo. Ma ho un problema multi-thread. Quando clicco sullo schermo appare una palla e non si muove affatto. Quando arriva un altro clic non […]