Articles of multithreading

Chiama il metodo sul thread dell’interfaccia utente da background in .net 2.0

Sto usando MonoDevelop (.net 2.0) per sviluppare un’applicazione iOS e Android. Utilizzo BeginGetResponse e EndGetResponse per eseguire in modo asincrono una richiesta Web in un thread in background. IAsyncResult result = request.BeginGetResponse(new AsyncCallback(onLogin), state); Tuttavia, sembra che il callback onLogin sia ancora in esecuzione su un thread in background, non permettendomi di interagire con l’interfaccia […]

Chiama i metodi dal thread principale – UnityEngine C #

Ho problemi con una versione di UnityEngine. (Imansible aggiornare, il gioco non è mio) Il server si arresta in modo anomalo quando si utilizza un metodo UnityEngine specifico in un timer / thread (è stato corretto in una versione, l’ho letto) Succede in modo totalmente casuale, ottengo un registro di crash, che parte dal timer […]

Esecuzione di più attività in C #

Sto sviluppando un software in tempo reale che ho alcune funzioni non in tempo reale. Specifiche: Devi fare il metodo1 in tempo reale; Bisogno di fare il metodo 2 ogni 60 minuti. Dovrei usare il multithreading? Compiti? Ora sto usando i timer, ma non penso che sia un buon uso per questo.

Perché C # volatile non protegge il riordino in scrittura?

Secondo questo libro online , la parola chiave volatile in C # non protegge dal riordino delle operazioni di scrittura seguite dalle operazioni di lettura. Fornisce questo esempio in cui sia a che b possono finire per essere impostati a 0 , nonostante x e y siano volatile : class IfYouThinkYouUnderstandVolatile { volatile int x, […]

Un’applicazione .NET attende che tutti i thread in primo piano finiscano prima che il programma venga terminato?

Ci scusiamo per questa domanda piuttosto stupida, ma ho fatto questo programma per verificare se tutti i thread in primo piano sono attesi per il loro completamento prima che il programma termini. Ma in questo programma, non appena premo un tasto per uscire dal programma, il thread principale termina e poi chiude l’applicazione anche mentre […]

Leggi le porte com usando il threading in c #

Vorrei alcuni consigli sul threading come sono nuovo ad esso. Ho letto diversi articoli sul threading online. Sto leggendo i dati delle porte dati. Vorrei usare il threading in modo che legga i dati ogni 5 secondi e aggiorni i dati sulla listbox. Attualmente, tutti i dati vengono letti. Non sono sicuro da dove cominciare. […]

Caricamento del modulo di Windows con oltre 200 controlli

La mia forma ha oltre 200 controlli! Occorrono circa 7 secondi per caricare il modulo e associare i controlli. Ho tracciato l’applicazione con alcuni profiler di prestazioni, ma non ho trovato nulla con il flag HOT ad eccezione del modulo di costruzione. Mi piacerebbe sapere che è ansible chiamare il metodo InitializeComponent con sth come […]

Esegui attività in modo asincrono in C #

Ho alcune attività di processo pesanti eseguite nella mia app WinForms. Il problema è che, mentre è in esecuzione, blocca l’interfaccia utente (thread principale dell’interfaccia utente). Non ho ancora lavorato molto con i thread e i delegati in C #, ed è per questo che spero che qualcuno possa aiutarmi, come gestire le attività pesanti […]

Non sta usando ciecamente InvokeRequired solo cattive pratiche?

Sono un programmatore alle prime armi quindi potrei sbagliarmi completamente qui, ma questo problema mi infastidisce più di quanto dovrebbe. Questo è in realtà un seguito da questa domanda. La risposta accettata era che devi chiamare InvokeRequired per evitare un sovraccarico, perché c’è una possibilità che tu stia già operando sul thread dell’interfaccia utente. In […]

Che cosa fa esattamente un “lucchetto”?

Sto lavorando su una class che crea e gestisce più connessioni socket e che inoltrerà le informazioni ricevute dai socket al thread principale e viceversa. Il multi-threading in cui sto passando così tante informazioni dentro e fuori è nuovo per me (come la maggior parte delle cose in C #), quindi ho bisogno di un […]