C# e Orientação a Objetos
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
THREADS 154<br />
6 }<br />
7 }<br />
Código <strong>C#</strong> 18.1: Tarefa que imprime várias vezes a palavra K19<br />
Em outra tarefa podemos imprimir a palavra “K31”.<br />
1 public static void ImprimeK31 ()<br />
2 {<br />
3 for ( int i = 0; i < 100; i ++)<br />
4 {<br />
5 System . Console . WriteLine (" K31 ");<br />
6 }<br />
7 }<br />
Código <strong>C#</strong> 18.2: Tarefa que imprime várias vezes a palavra K31<br />
Executando Tarefas<br />
As tarefas são executadas “dentro” de objetos da classe System.Threading.Thread. Para cada<br />
tarefa que desejamos executar, devemos criar um objeto da classe Thread e associá-lo ao método<br />
que define a tarefa.<br />
1 Thread thread1 = new Thread ( ImprimeK19 );<br />
2 Thread thread2 = new Thread ( ImprimeK31 );<br />
Código <strong>C#</strong> 18.3: Associando tarefas e threads<br />
Depois de associar uma tarefa (método que define o que queremos executar) a um objeto da<br />
classe Thread, devemos “disparar” a execução da thread através do método Start().<br />
1 Thread thread = new Thread ( ImprimeK19 );<br />
2 thread . Start ();<br />
Código <strong>C#</strong> 18.4: Executando uma thread<br />
Podemos “disparar” diversas threads e elas poderão ser executadas simultaneamente de acordo<br />
com o revezamento que a máquina virtual e o sistema operacional aplicarem.<br />
Exercícios de Fixação<br />
1 Crie um projeto no Microsoft Visual <strong>C#</strong> Express chamado Threads.<br />
2 Defina algumas tarefas para imprimir mensagens na tela.<br />
1 class App<br />
2 {<br />
3 public static void ImprimeK19 ()<br />
4 {<br />
5 for ( int i = 0; i < 100; i ++)<br />
6 {<br />
154 www.k19.com.br