JAVA 学习笔记 【Thread简单概念】

一些简单概念:
Thread.Start
():启动线程的执行;
Thread.Abort
():以开始终止此线程的过程。如果线程已经在终止,则不能通过Thread.Start()来启动线程。
Thread.Suspend
():挂起线程,或者如果线程已挂起,则不起作用;
Thread.Resume
():继续已挂起的线程;
Thread.Interrupt
():中断处于 Wait Sleep Join 线程状态的线程;
Thread.Join
():阻塞调用线程,直到某个线程终止时为止
Thread.Sleep
():将当前线程阻塞指定的毫秒数;

Thread.Abort()方法使得系统悄悄的销毁了线程而且不通知用户。一旦实施Thread.Abort()操作,该线程不能被重新启动。调用了这个方法并不是意味着线
程立即销毁,因此为了确定线程是否被销毁,我们可以调用Thread.Join()来确定其销毁,Thread.Join()是一个阻塞调用,直到线程的确是终止了才返回。

  private void StartThread( ref Thread thread, ThreadStart threadStart )
  {
   if ( thread != null )
   {
    thread.Abort(); //
终止此线程的过程。如果线程已经在终止,则不能通过Thread.Start()来启动线程。
    thread.Join();  //
调用Thread.Abort()操作并不是意味着线程立即销毁,因此为了确定线程是否被销毁,我们可以调用Thread.Join()来确定其销毁
    thread = null;  //
初始化
   }

   thread = new Thread( threadStart );  // 重新实例化一个线程
   thread.IsBackground = true;    //
线程在后台执行
   thread.Start();
  }

  private void StopThread(Thread thread )
  {
   if ( thread != null )
   {
    thread.Abort();
    thread.Join();
    thread = null;
   }
  }

原文地址:https://www.cnblogs.com/vijozsoft/p/2864544.html