http://www.csdn.net/Develop/Read_Article.asp?Id=20695

解决方案 »

  1.   

    ms-help://MS.VSCC/MS.MSDNVS.2052/csref/html/vcwlkThreadingTutorial.htm
    还有www.codeproject.com
    上面有很多,我现在上不了,不能给你一个确切的网址,你上去看看先咯
    先找那些for beginner的看看,应该有很大帮助的
      

  2.   

    创建多线程应用程序
          在.NET和C#中编写一个多线程应用程序将非常得容易。即使对于那些从没有用C#
    编写过多线程应用程序的初学者,只需遵循以下这些简单的步骤就可以实现目的。
          定义名称空间      在.NET中,多线程功能是在System.Threading名称空间中定义的。因此,在使用
    任何线程类之前,必须定义 System.Threading名称空间。定义方法如下:
          using System.Threading;
          启动线程      System.threading名称空间中的Thread类代表一个线程对象,用这个类对象可以
    创建新的线程,删除、暂停和恢复线程。 下面的代码使用Thread类创建一个新的线
    程,然后启动这个线程:
          thread = new Thread(new ThreadStart( WriteData ));      thread.Start();
          其中WriteData是这个线程要执行的一个函数,代码如下:
          protected void WriteData()      {      string str ;      for ( int i = 0; i<=10000; i++ )      {      str = "Secondary Thread" + i.ToString();      Console.WriteLine(listView1.ListItems.Count, str, 0, new
    string[]{""} );      Update();      }      }      杀死线程
          Thread类的Abort方法用于永久地杀死一个线程。但是请注意,在调用Abort方法
    前一定要判断线程是否还激活,也就是判断thread.IsAlive的值:
          if ( thread.IsAlive )      {      thread.Abort();      }
          暂停线程
          Thread.Sleep方法用于将一个线程暂停一段时间,代码如下:
          thread.Sleep();
          设置线程的优先权
          我们可以使用Thread类的ThreadPriority属性设置线程的优先权。线程优先权的
    取值范围是Normal、AboveNormal、BelowNormal、Highest或者Lowest。请看下面的设
    置代码:
          thread.Priority = ThreadPriority.Highest;
          延迟线程
          Thread类的Suspend方法可以延迟一个线程。线程被延迟到调用Resume方法为
    止。
          if (thread.ThreadState = ThreadState.Running )      {      thread.Suspend();      }
          恢复被延迟的线程
          调用Resume方法可以恢复一个被延迟的线程。如果线程没有被延迟,Resume方法
    就是无效的。
          if (thread.ThreadState = ThreadState.Suspended )      {      thread.Resume();      }