Articles of multithreading

Sicurezza del thread di std :: map per operazioni di sola lettura

Ho una std :: map che uso per mappare i valori (ID campo) su una stringa leggibile dall’uomo. Questa mappa viene inizializzata una volta quando il mio programma inizia prima che vengano avviati altri thread, dopodiché non viene mai più modificato. In questo momento, do a ogni thread la propria copia di questa (piuttosto grande) […]

Puoi collegarti ad un buon esempio di utilizzo di BackgroundWorker senza inserirlo in un modulo come componente?

Ricordo che molti anni fa (nel 2005) stavo usando BackgroundWorker nel mio codice senza usare un componente visivo per questo, ma non ricordo come (purtroppo sono molto smemorato e dimentico tutto molto presto dopo aver smesso di usarlo) . Forse stavo estendendo la class di BackgroundWorker. Puoi colbind a un buon esempio di utilizzo di […]

Java: come utilizzare Thread.join

Sono nuovo ai thread. Come posso convincere t.join a lavorare, per cui il thread che lo chiama attende fino a quando non viene eseguito? Questo codice bloccherebbe semplicemente il programma, perché il thread è in attesa di morire, giusto? public static void main(String[] args) throws InterruptedException { Thread t0 = new Thready(); t0.start(); } @Override […]

ThreadPoolExecutor è sicuro?

ExecutorService garantisce la sicurezza del thread? Devo inviare lavori da thread diversi allo stesso ThreadPoolExecutor, devo sincronizzare l’accesso all’esecutore prima di interagire / presentare attività?

Fermare una discussione in Java?

Sono in procinto di scrivere un pezzo di codice che si connette a un server genera un mucchio di thread usando quella connessione e fa un mucchio di “cose”. Ci sono alcuni casi in cui la connessione fallisce e ho bisogno di fermare tutto e ricominciare da zero con un nuovo object. Volevo ripulire dopo […]

La variabile volatile ‘legge’ velocemente come le normali letture?

So che scrivere su una variabile volatile lo svuota dalla memoria di tutte le CPU, tuttavia voglio sapere se le letture di una variabile volatile sono veloci come le normali letture? Le variabili volatile possono essere posizionate nella cache della CPU o vengono sempre recuperate dalla memoria principale?

Se l’istruzione con confronto String fallisce

Non so davvero perché l’istruzione if qui sotto non sia in esecuzione: if (s == “/quit”) { System.out.println(“quitted”); } Di seguito è l’intera class. Probabilmente è un problema di logica davvero stupido, ma mi sono tirato fuori i capelli senza riuscire a capirlo. Grazie per aver guardato 🙂 class TextParser extends Thread { public void […]

Attendi il completamento dei thread secondari: Java

Descrizione del problema : – Passaggio 1: accetta l’input FILE_NAME dall’utente nel thread principale. Passo 2: Eseguire 10 operazioni su quel file (es. Contare i caratteri, contare le linee ecc.), E tutte quelle 10 operazioni devono essere in thread setto. Significa che ci devono essere 10 thread figli. Passaggio 3: il thread principale attende fino […]

java scarica più file usando i thread

Sto cercando di scaricare più file che corrispondono a uno schema utilizzando thread. Il modello potrebbe corrispondere a 1 o 5 o 10 file di dimensioni diff. diciamo per semplicità il codice effettivo che dovrebbe scaricare il file è nel metodo downloadFile () e fileNames è l’elenco dei nomi di file che corrispondono al modello. […]

Perché Thread.isInterrupted () restituisce sempre false?

Ho trovato il metodo di JavaDoc: Restituisce: true se questo thread è stato interrotto; falso altrimenti. Penso che ci sia qualcosa di sbagliato nella mia comprensione del metodo. Inoltre, potrei fraintendere il concetto di “interruzione” in Thread. Qualsiasi spiegazione è ben accetta! Grazie! Snippet di codice: Nella definizione del thread: public void run() { try […]