序列在java中的含义是什么?

序列在java中的含义是什么?,java,multithreading,Java,Multithreading,Java线程可以有开始、结束和顺序,这意味着什么?我认为这意味着线程执行一系列操作。老实说,这表达了一个非常糟糕的概念 换言之: 您可以创建一个线程,理想的情况是向它传递一个可运行的。(您可以扩展线程,并覆盖其运行方法,但这通常是不受欢迎的。) 您可以在上面调用start 调用start的线程继续执行其程序中的下一条语句 run方法在单独的线程中执行,与启动它的线程无关。这里的行为就是我所认为的“顺序” 由于以下情况之一,新螺纹最终终止: 其run方法正常完成 它的run方法以异常完成 如果

Java线程可以有开始、结束和顺序,这意味着什么?

我认为这意味着线程执行一系列操作。老实说,这表达了一个非常糟糕的概念

换言之:

  • 您可以创建一个
    线程
    ,理想的情况是向它传递一个
    可运行的
    。(您可以扩展
    线程
    ,并覆盖其
    运行
    方法,但这通常是不受欢迎的。)
  • 您可以在上面调用
    start
  • 调用
    start
    的线程继续执行其程序中的下一条语句
  • run
    方法在单独的线程中执行,与启动它的线程无关。这里的行为就是我所认为的“顺序”
  • 由于以下情况之一,新螺纹最终终止:
    • run
      方法正常完成
    • 它的
      run
      方法以异常完成
    • 如果它是守护进程线程,则由于所有非守护进程线程退出,它可以作为JVM终止的一部分终止

在Java程序中,您创建线程,但它们不是由Java单独执行的。Java需要底层操作系统的帮助来执行它们。为了分配微处理器时间并监督所有线程的执行,操作系统配备了线程调度程序。维护线程执行顺序的全部责任在于线程调度程序,其中哪个线程应该优先于另一个线程。调度取决于调度器的算法。存在许多类型的算法,如抢占式时间切片以及循环等。这是一种非常复杂的算法,在给定时间内执行多次。
调度程序维护一个线程池。当Java线程开始调用
start()
方法时,它将加入等待线程池

线程状态
1。新状态:创建线程实例后,线程处于此状态,但在调用start()方法之前。此时,线程被视为不活动

2。可运行(准备运行)状态:线程从可运行状态开始其生命周期。线程在调用
start()
方法后首先进入可运行状态,但线程也可以在运行、等待、睡眠或从阻塞状态返回后返回此状态。在此状态下,线程正在等待打开处理器

3。运行状态:线程处于运行状态,这意味着该线程当前正在执行。有几种方法可以进入Runnable状态,但只有一种方法可以进入Runnable状态:调度程序从Runnable池中选择一个线程

4。死状态:当线程的
run()方法完成时,可以将其视为死线程。如果任何线程处于此状态,则表示它无法再次运行。
5。阻塞:-由于等待另一个线程占用的资源,线程可以进入此状态


没有任何上下文,它就没有任何意义。听起来你好像在读一本糟糕的书或教程。如果你给我们上下文,我们可以从周围的文本中推断出意思。任何有开始的东西都有结束。-矩阵革命将其与“序列图”相关联,这是一种表示多线程行为的UML(统一建模语言)图。