Backgroundworker se congela
Publicado por Jose (10 intervenciones) el 25/04/2012 20:29:51
Hola, tengo el siguiente inconveniente:
Tengo una aplicacion que realiza 1 proceso (dentro de una clase) y desde ahi llama a 4 procesos mas (clases).
El problema empezo desde que quiero implementar Backgroundworker, los procesos funcionan correctamente.
Por un lado la aplicacion funciona, pero cuando termina de procesar y sale por RunWorkerCompleted se cuelga por varios segundos...
Otra cosa que pasa es que no se como se deberia implementar el progressbar teniendo varias clases
frmMain_Load
CheckForIllegalCrossThreadCalls = false;
backgroundWorker4_DoWork()
DataTable dtCoinc = ClsCargaGrid.carga(idEntidad);
miGrid.DataSource = dtCoinc;
miGrid.Refresh();
public static DataTable carga(int idEntidad)
DataTable dt1 = ClsBancoContab.genero(dtTemp1);
DataTable dt2 = ClsBancoContab.genero(dtTemp2);
DataTable dt3 = ClsBancoContab.genero(dtTemp3);
DataTable dt4 = ClsBancoContab.genero(dtTemp4);
DataTable dtCoinc = dt1.Copy();
dtCoinc.Merge(dt2);
dtCoinc.Merge(dt3);
dtCoinc.Merge(dt4);
return dtCoinc
Gracias!!!
Tengo una aplicacion que realiza 1 proceso (dentro de una clase) y desde ahi llama a 4 procesos mas (clases).
El problema empezo desde que quiero implementar Backgroundworker, los procesos funcionan correctamente.
Por un lado la aplicacion funciona, pero cuando termina de procesar y sale por RunWorkerCompleted se cuelga por varios segundos...
Otra cosa que pasa es que no se como se deberia implementar el progressbar teniendo varias clases
frmMain_Load
CheckForIllegalCrossThreadCalls = false;
backgroundWorker4_DoWork()
DataTable dtCoinc = ClsCargaGrid.carga(idEntidad);
miGrid.DataSource = dtCoinc;
miGrid.Refresh();
public static DataTable carga(int idEntidad)
DataTable dt1 = ClsBancoContab.genero(dtTemp1);
DataTable dt2 = ClsBancoContab.genero(dtTemp2);
DataTable dt3 = ClsBancoContab.genero(dtTemp3);
DataTable dt4 = ClsBancoContab.genero(dtTemp4);
DataTable dtCoinc = dt1.Copy();
dtCoinc.Merge(dt2);
dtCoinc.Merge(dt3);
dtCoinc.Merge(dt4);
return dtCoinc
Gracias!!!
Valora esta pregunta


0