Multi thread

martedì 04 gennaio 2011 - 18.28

ale091970 Profilo | Newbie

Buonasera e buon anno a tutti.
Ho bisogno del vostro aiuto per il seguente problema.

Ho scritto in .net una dll che, per farla breve:
- riceve in input un file di testo
- lo legge per intero e quando trova righe contenenti dati interessanti, li estrae e li salva su un db temporaneo
- al termine della lettura del file elabora i dati salvati sul db
- infine riespone le elaborazioni su Excel

Ho poi realizzato una semplice windows form in c#, come interfaccia per l'utente, che utilizza la dll suddetta.

Tutto il processo impegna il computer qualche minuto, in funzione delle dimensioni del file originale e delle prestazioni del pc: durante questo tempo il form d'interfaccia risulta ovviamente bloccato.
La soluzione per ovviare a questo problema è lanciare l'elaborazione del file in un nuovo thread, corretto? Partendo dal presupposto che sono totalmente ignorante in materia di multi-thread, ci sono aspetti rilevanti che è bene che io sappia prima di far danni?

E soprattutto: come faccio a fare in modo che, durante l'elaborazione, la dll lanci dei "messaggi" sull'avanzamento del lavoro? I messaggi dovrebbero essere intercettabili dalla form (o comunque da qualsiasi programma che utilizzi la dll in un thread separato) in modo che possa mostrare all'utente il progresso (o anche aggiornare i log)?!

Grazie
Alessandro
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5