zoukankan      html  css  js  c++  java
  • 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;
       }
      }

  • 相关阅读:
    MySQL分库分表环境下全局ID生成方案
    centos添加php及mysql环境变量
    shell中的常用通配符,字符类
    centos7 安装xinetd,telnet
    centos7 systemctl一些用法
    ps命令
    nginx与php-fpm通信的两种方式
    nginx常用功能
    MySQL安装
    MySql与MariaDB由来与历程
  • 原文地址:https://www.cnblogs.com/vijozsoft/p/2864544.html
Copyright © 2011-2022 走看看