Jak vytvořit podproces pomocí aplikace Visual C#

Překlady článku Překlady článku
ID článku: 815804 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Můžete psát s více podprocesy aplikace v Microsoft Visual C#.NET nebo v aplikaci Microsoft Visual C#. Tento článek popisuje, jak jednoduchá aplikace Visual C# můžete vytvořit a spravovat podprocesů.

Požadavky

Následující seznam obsahuje doporučený hardware, software, síťové infrastruktury a aktualizace service Pack, které potřebujete:
  • Systém Microsoft Windows 2000, Microsoft Windows XP nebo Microsoft Windows Server 2003
  • Microsoft Visual C#.NET nebo Microsoft Visual C# 2005
Tento článek předpokládá, že jste obeznámeni s následujícími témata:
  • Visual C# programování
  • Visual Studio.ČISTÉ integrované vývojové prostředí (IDE) nebo Visual Studio 2005 IDE

Vytvoření aplikace Visual C# s podprocesy

  1. Spusťte aplikaci Visual Studio.NET, Microsoft Visual Studio 2005 nebo Microsoft Visual C# 2005 Express Edition.
  2. Vytvořit nový projekt aplikace Visual C# Windows aplikace s názvem ThreadWinApp.
  3. Přidat Tlačítko řízení do formuláře. Podle výchozím názvem tlačítka Button1.
  4. Přidat Komponenta ProgressBar součást formuláře. Výchozím názvem indikátoru průběhu ProgressBar1.
  5. Klepněte pravým tlačítkem myši formulář a klepněte na tlačítko Zobrazení Kód.
  6. Na začátek souboru přidáte následující příkaz:
    using System.Threading;
  7. Přidejte následující Klepněte na tlačítko obslužnou rutinu události proButton1:
    private void button1_Click(object sender, System.EventArgs e)
    {
    	MessageBox.Show("This is the main thread");
    }
  8. Přidat následující proměnnou Formulář1 Třída:
    private Thread trd;
    
  9. Přidat metodu Formulář1 Třída:
    private void ThreadTask()
    {
    	int stp;
    	int newval;
    	Random rnd=new Random();
    
    	while(true)
    	{
    		stp=this.progressBar1.Step*rnd.Next(-1,2);
    		newval = this.progressBar1.Value + stp;
    
    		if (newval > this.progressBar1.Maximum)
    			newval = this.progressBar1.Maximum;
    		else if (newval < this.progressBar1.Minimum)
    			newval = this.progressBar1.Minimum;
    		
    		this.progressBar1.Value = newval;
    
    		Thread.Sleep(100);
    	}
    }
    Poznámka: Toto je kód podkladovou podprocesu. Tento kód je nepřetržitě opakovat to náhodně přírůstky nebo sníží hodnotaProgressBar1, a pak čeká 100 milisekund před pokračuje.
  10. Přidejte následující Zatížení obslužnou rutinu události pro Formulář1. Tento kód vytvoří nový podproces, umožňuje podprocesu podprocesem na pozadí a potom spustí podprocesu.
    private void Form1_Load(object sender, System.EventArgs e)
    {
    	Thread trd = new Thread(new ThreadStart(this.ThreadTask));
    	trd.IsBackground = true;
    	trd.Start();
    }

Ověřte, zda funguje

  1. Vytvoření a spuštění aplikace. Všimněte si, že hodnoty vProgressBar1 náhodně změní. Toto je nový podproces v operace.
  2. Prokázat, že hlavní podproces je nezávislý podproces, který změní hodnotu ProgressBar1, klepněte tlačítko ve formuláři. Zobrazí se dialogové okno s následující chybovou zprávu:
    This is the main thread
Čekání na vstup. Všimněte si, že hodnoty v ProgressBar1 i nadále měnit.

Poradce při potížích

Ve složitějších aplikací Ujistěte se, že synchronizovat více podprocesů při přístupu sdílené proměnné. Další informace naleznete v tématu na Zámek prohlášení a příbuzných témat v jazyce Visual C#.NET Dokumentace online nápovědy.

Odkazy

Další informace naleznete na tomto webu společnosti Microsoft nebo.Dokumentaci SDK pro rozhraní .NET Framework:
"Vlákno Třída"
http://msdn2.microsoft.com/en-us/library/System.Threading.Thread (vs.71) .aspx

Vlastnosti

ID článku: 815804 - Poslední aktualizace: 20. května 2011 - Revize: 4.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual C# .NET 2002 Standard Edition
  • Microsoft Visual C# .NET 2003 Standard Edition
  • Microsoft Visual C# 2005 Express Edition
Klíčová slova: 
kbnamespace kbthreadsync kbthread kbhowtomaster kbmt KB815804 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:815804

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com