티스토리 뷰

Code/C#

[C#] Thread 샘플 코드 2

Hide Code 2007. 12. 7. 19:49
이것은 앞의 예제를 약간 변형한 것이다.

2개의 Thread가 하나의 공통된 변수를 다루고 있다.

2개의 Thread가 하나의 int 변수에 발생한 난수를 더하고 있다.



using System;
using System.Threading;

namespace SampleThread
{
   class Program
   {
       static void Main(string[] args)
       {
           myRandom = new Random();
           s = 0;

           Thread t1 = new Thread(new ThreadStart(method1));
           t1.Start();

           Thread t2 = new Thread(new ThreadStart(method2));
           t2.Start();
       }

       private static void method1()
       {
           for (int i = 0; i < 5; i++)
           {
               r = myRandom.Next(6) * 1000;
               s += r;
               Console.WriteLine("[{0,-10}] : {1}", r, s);
               Thread.Sleep(r);
           }
       }

       private static void method2()
       {
           for (int i = 0; i < 5; i++)
           {
               r = myRandom.Next(6) * 1000;
               s += r;
               Console.WriteLine("[{0,10}] : {1}", r, s);
               Thread.Sleep(r);
           }
       }

       private static Random myRandom;
       private static int r;
       private static int s;
   }
}

'Code > C#' 카테고리의 다른 글

[C#] Thread & FileStream 사용 예제  (0) 2007.12.07
[C#] Thread 샘플 코드 3  (0) 2007.12.07
[C#] Thread 샘플 코드 1  (0) 2007.12.07
[C#] Extension Methods 샘플 코드  (0) 2007.12.02
[C#] 중복되지 않는 난수 발생 샘플 코드  (0) 2007.11.29
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/07   »
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
글 보관함