Articles of multithreading

SwingWorker in Java

Ho un problema. Ho un JFrame . JDialog un JDialog . Quando viene premuto il pulsante su JDialog , deve essere eliminato e deve essere inviata un’e-mail. Allo stesso tempo, ho bisogno di un altro JDialog per apparire con JProgressBar indeterminato. Quando viene inviata l’e-mail, JDialog deve essere eliminato (e ne viene creato uno nuovo) […]

Se i thread condividono lo stesso PID, come possono essere identificati?

Ho una query relativa all’implementazione dei thread in Linux. Linux non ha un supporto di thread esplicito. Nello userspace, potremmo usare una libreria di thread (come NPTL) per creare thread. Ora se usiamo NPTL supporta la mapping 1: 1. Il kernel userà la funzione clone() per implementare i thread. Supponiamo di aver creato 4 thread. […]

Perché usare un ReentrantLock se si può usare sincronizzato (questo)?

Sto cercando di capire che cosa rende il blocco nella concorrenza così importante se si può usare synchronized (this) . Nel codice fittizio qui sotto, posso fare entrambi: sincronizzato l’intero metodo o sincronizzare l’area vulnerabile (sincronizzato (questo) {…}) OPPURE bloccare l’area di codice vulnerabile con un ReentrantLock. Codice: private final ReentrantLock lock = new ReentrantLock(); […]

Operazione crossthread non valida … – VB.NET

Sto usando vb.net e nel mio programma ottengo questo errore “crossthread operation not valid” quando eseguo il mio backgroundworker che renderà questa casella di testo abilitata true. Il mio sottotitolo principale prima trasformsrà l’abilitato in falso, e quando il backgroundworker lo eseguirà tornerà vero e quindi uscirà. Perché mi dà un errore? A proposito: c’è […]

Java: avvio di una nuova discussione in un costruttore

Perché sta iniziando una nuova discussione in un costruttore disapprovato in Java (o ovunque, del resto). Sto ricevendo degli avvertimenti da parte di Netbeans per farlo, ma non mi sta dando suggerimenti di refactoring. Sto scrivendo un’applicazione client / server Swing e il thread che sto avviando si trova nel costruttore JFrame del server, per […]

Perché non è una buona pratica sincronizzare su Boolean?

Il mio architetto lo dice sempre Non sincronizzare mai su Boolean Non sono in grado di capire il motivo e apprezzerei davvero se qualcuno potesse spiegare con un esempio il motivo per cui non è una buona pratica. Codice di esempio di riferimento private Boolean isOn = false; private String statusMessage = “I’m off”; public […]

Avere una serie di attività con solo X in esecuzione alla volta

Diciamo che ho 100 compiti che fanno qualcosa che richiede 10 secondi. Ora voglio correre solo 10 alla volta come quando 1 di quei 10 finisce un altro compito viene eseguito fino a quando tutti sono finiti. Ora ho sempre usato ThreadPool.QueueUserWorkItem() per tale compito, ma ho letto che è una ctriggers pratica farlo e […]

System.Windows.Threading.Dispatcher e WinForms?

System.Windows.Threading.Dispatcher funziona sul thread UI di un’applicazione WinForms ? Se sì, perché? Viene da WindowsBase.dll che sembra essere un componente WPF . In caso contrario, come posso richiamare le unità di lavoro sul thread dell’interfaccia utente? Ho trovato Control.BeginInvoke() , ma sembra maldestro creare un controllo solo per fare riferimento al thread di origine.

Come mettere un compito a dormire (o ritardare) in C # 4.0?

C’è Task.Delay in. NET 4.5 Come posso fare lo stesso in .NET 4.0?

I thread C # sono sicuri?

In particolare Crea una funzione per prendere un array e un indice come parametri. Crea un array di elementi. Crea un ciclo di conteggio. All’interno del ciclo su una nuova discussione assegnare una nuova istanza dell’object alla matrice usando l’indicizzatore passato. So come gestire i thread ecc. Mi interessa sapere se questo è un modo […]