Cuestión : ¿Rediseñar el problema cuando el uso está ocupado - roscan operaciones?

Tengo un uso en VS2008 (VB.NET) que realice algunas operaciones muy largas. En mi forma principal, tengo una barra del progreso (en modo de la carpa) esa yo quisiera ser visible. Cuando el uso está ejecutando los submarinos y las funciones, la forma se traba para arriba y se dibuja mal (según lo representado) por varios minutos mientras que se ejecuta el código - creo que la solución es funcionar con las funciones en otro hilo de rosca. ¿Cómo esto se hace SIMPLEMENTE? el

When que se selecciona un botón de radio, las funciones es código de executed.
Example:
class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
class= " del id= " codeSnippet814463 del
…
  ElseIf Me.RadioButtoni7.Checked = entonces verdad
    ExecuteOperation (“comienzo”)
    RestartClusteredServiceProduction (“HF1”)
    RestartClusteredServiceProduction (“Sys2”)
    ExecuteOperation (“parada”)
  ElseIf Me.RadioButtoni8.Checked = entonces verdad
    ExecuteOperation (“comienzo”)
    RestartPSProduction ()
    RestartSFProduction ()
    RestartQRProduction ()
    ExecuteOperation (“parada”)
  ElseIf Me.RadioButtoni9.Checked = entonces verdad
    ExecuteOperation (“comienzo”)
    RestartTServerTest ()
    RestartEPSTest ()
    ExecuteOperation (“parada”)
  ElseIf Me.RadioButtono1.Checked = entonces verdad
…
class= " lastRow del
>Attachments del " nombre " del class= del class= " valor " del
del >

>Application de la " descripción " del class= del
anchura del style= del > uso del “src=” /images/t327293/g3freeze.png” congelado mientras que ejecuta”/></a>
</div>
      el class= de </div><div
del >
del >
>How de la " descripción " del class= del
anchura del style= del > del “src=” /images/t327294/g3normal.png cómo el uso debe mirar mientras que ejecuta (la barra del progreso es visible) (algunos elementos de la forma pixelated para la aislamiento/la seguridad)”/></a>
</div>
      el class= de </div><div
del >
class= del

Respuesta : ¿Rediseñar el problema cuando el uso está ocupado - roscan operaciones?

Debajo está una cierta demostración del pseudo código uso simplificado del control de BackgroundWorker ():
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
Clase pública Form1

    Manijas privadas Button1.Click del submarino Button1_Click (remitente de ByVal como System.Object, ByVal e como System.EventArgs)
        BackgroundWorker1.RunWorkerAsync (ParameterOptionalHere)
    Submarino del extremo

    Manijas privadas BackgroundWorker1.DoWork del submarino BackgroundWorker1_DoWork (remitente de ByVal como objeto, ByVal e como System.ComponentModel.DoWorkEventArgs)
        'asir el parámetro si está utilizado:
        Amortiguar x = molde de e.Argument 'a lo que usted necesita
        Foo (x)
    Submarino del extremo

    Foo secundario privado ()

        '… su submarino existente…

        'Utilizar ReportProgress () si usted necesita poner al día el GUI durante la operación:
        BackgroundWorker1.ReportProgress (0, ANY_OBJECT_HERE)
        el 'primer parámetro es típicamente 0 a 100  para un progressbar
        el 'segundo parámetro se puede utilizar a passy CUALQUIER COSA
    Submarino del extremo

    El submarino privado BackgroundWorker1_ProgressChanged (remitente de ByVal como objeto, ByVal e como System.ComponentModel.ProgressChangedEventArgs) dirige BackgroundWorker1.ProgressChanged
        '… actualización el GUI de este acontecimiento…
        primer parámetro de e.ProgressPercentage el 'pasó a ReportProgress ()
        segundo parámetro de e.UserState el 'pasó a ReportProgress () --> echarlo con C ()
    Terminar el submarino

    El submarino privado BackgroundWorker1_RunWorkerCompleted (remitente de ByVal como objeto, ByVal e como System.ComponentModel.RunWorkerCompletedEventArgs) dirige BackgroundWorker1.RunWorkerCompleted
        '… esto fuegos cuando la operación del backgroundworker es completa…
    Submarino del extremo

Clase del extremo
Otras soluciones  
 
programming4us programming4us