ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# Thread 스레드
    Writer/WarmingUp Code 2008. 10. 29. 07:15
    반응형

    ///////////////////////// 멀티 스레드 ///////////////////////////


    using System;
    using System.Threading;

    class threadtest
    {
     static void ThreadProc()
     {
      for (int i = 0; i < 100; i++)
      {
       Console.WriteLine(i);
       Thread.Sleep(500);
      }
      Console.WriteLine("작업스레드종료");
     }
     static void Main()
     {
      Thread T = new Thread(new ThreadStart(ThreadProc));
      T.Start();
      for (;;)
       {
        ConsoleKeyInfo cki;
        cki = Console.ReadKey();
        if(cki.Key == ConsoleKey.A)
        {
         Console.Beep();
        }
        if(cki.Key == ConsoleKey.B)
        {
         T.Abort();
         break;
         
        }
       
       }
      Console.WriteLine("주 스레드 종료");
     }
    }




    /////////////////////////////////     스레드 Thread lock ////////////////////////
    using System;
    using System.Threading;

    class Site
    {
     public string name;
     public Site(string aname)
     {
      this.name = aname;
     }
    }
    class test
    {
     private static Site site = new Site("www.winapi.co.kr");
     static void ThreadProc()
     {
      for (int i = 0; i < 100; i++)
      {
       lock (site)
       {
        Console.SetCursorPosition(0, 0);
        Console.WriteLine("{0}에서{1}다운로드중", site.name, i);
       }
       Thread.Sleep(100); 
      }
     }

     static void DoSomething()
     {
      string old = site.name;
      site.name = "www.loseapi.co.kr";
      for (int i = 0; i < 100; i++)
      {
       Console.SetCursorPosition(0,1);
       Console.WriteLine("{0}{1}",site.name , i);
       Thread.Sleep(150);
      }
      site.name = old;
     }

     
     static void Main()
     {
      Thread T = new Thread(new ThreadStart(ThreadProc));
      T.Start();
      Thread.Sleep(2000);
      lock(site)
      {
       DoSomething();
      }

     }
    }

    반응형

    'Writer > WarmingUp Code' 카테고리의 다른 글

    워밍업 코드 클래스  (0) 2008.12.23
    C# ADO.NET 접속 Console접속 SELECT ,UPDATE  (0) 2008.11.12
    ADO.NET 접속  (0) 2008.10.29
    메모장 만들기(MDI)포함  (0) 2008.10.29
    C# 객체생성과제  (0) 2008.10.20
    C# 과제  (0) 2008.10.17
    abstract interface  (0) 2008.10.15
    델리게이트 이벤트 소스 노가다 2  (0) 2008.10.14

    댓글

Designed by Tistory.