Windows basiseenheid van de uitvoering is een draad. Dat betekent WIN geen processen uit te voeren; In plaats daarvan voert discussies. Threads zijn codereeksen die draaien multitasked op individuele stapels. Een thread heeft zijn eigen reeks van code, die wordt uitgevoerd in een gelijktijdige manier. Dus discussies helpen ons gelijktijdige verwerking te bereiken. WIN Scheduler bestuurt de uitvoering van alle draden die in een systeem. In WIN, elke thread zijn eigen prioriteit, genummerd van 0 tot 31, op basis waarvan plant de uitvoering van elke draad WIN.
Hoe hoger de prioriteit getal, hoe hoger de prioriteit thread. Een proces kan een enkele draad of meerdere threads te hebben. Eén proces minimaal één draad hebben. Processen kunnen paaien draden en kan draden te beëindigen
Hieronder programma laat zien hoe elke draad houdt een apart exemplaar van dezelfde statische variabele met ThreadStatic attribuut
using System;.
met System. Collections.Generic;
met System.Text;
met System.
Threading;
namespace Thread_Programming
{
class ThreadStaticProgram
{
[ThreadStatic]
statische reeks threadStaticVariable = "";
static void Main (string [] args)
{
Console.WriteLine ("rode draad Voor {0}", threadStaticVariable);
threadStaticVariable = "rode draad";
Console.WriteLine ("rode draad Voor Voor lus = {0} ", threadStaticVariable);
Discussie [] = nieuwe discussies Discussie [3];
for (int i = 0; i
{
discussies [i] = nieuwe Thread (delegate (object j) {
Console.
WriteLine ("Thread {0} voordat = {1}", j, threadStaticVariable);
threadStaticVariable = "Reageer" + j;
Console.WriteLine ("Thread {0} na = {1}", j, threadStaticVariable);
}
);
discussies [i] .start (i);
}
Array.ForEach (threads, afgevaardigde (Draad t) {t.Join (); });
Console.WriteLine ("rode draad na Voor Loop = {0}", threadStaticVariable);
Console.
ReadLine ();
}
}
}
Resultaat op Console Screen:
rode draad Voordat
rode draad Voordat Voor Loop = rode draad
Thread0 voordat =
thread1 voordat =
thread1 na = thread1
Thread0 na = Thread0
thread2 voordat =
thread2 na = thread2
rode draad na Voor Loop = draad