Class Thread

java.lang.Object
java.lang.Thread
All Implemented Interfaces:
Runnable
Direct Known Subclasses:
CodenameOneThread

public class Thread extends Object implements Runnable
A thread is a thread of execution in a program. The Java Virtual Machine allows an application to have multiple threads of execution running concurrently.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The maximum priority that a thread can have.
    static final int
    The minimum priority that a thread can have.
    static final int
    The default priority that is assigned to a thread.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Allocates a new Thread object.
    Thread(Runnable target)
    Allocates a new Thread object with a specific target object whose run method is called.
    Thread(Runnable target, String name)
    Allocates a new Thread object with the given target and name.
    Thread(String name)
    Allocates a new Thread object with the given name.
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    Returns the current number of active threads in the virtual machine.
    static Thread
    Returns a reference to the currently executing Thread object.
    final String
    Returns this thread's name.
    final int
    Returns this thread's priority.
     
    void
    Interrupts this thread.
    final boolean
    Tests if this thread is alive.
    final void
    Waits for this thread to die.
    void
    run()
    If this thread was constructed using a separate Runnable run object, then that Runnable object's run method is called; otherwise, this method does nothing and returns.
    final void
    setPriority(int newPriority)
    Changes the priority of this thread.
    static void
    sleep(long millis)
    Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds.
    void
    Causes this thread to begin execution; the Java Virtual Machine calls the run method of this thread.
    Returns a string representation of this thread, including the thread's name and priority.
    static void
    Causes the currently executing thread object to temporarily pause and allow other threads to execute.

    Methods inherited from class Object

    clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • MAX_PRIORITY

      public static final int MAX_PRIORITY
      The maximum priority that a thread can have. See Also:Constant Field Values
      See Also:
    • MIN_PRIORITY

      public static final int MIN_PRIORITY
      The minimum priority that a thread can have. See Also:Constant Field Values
      See Also:
    • NORM_PRIORITY

      public static final int NORM_PRIORITY
      The default priority that is assigned to a thread. See Also:Constant Field Values
      See Also:
  • Constructor Details

    • Thread

      public Thread()
      Allocates a new Thread object. Threads created this way must have overridden their run() method to actually do anything.
    • Thread

      public Thread(Runnable target)
      Allocates a new Thread object with a specific target object whose run method is called. target - the object whose run method is called.
    • Thread

      public Thread(Runnable target, String name)
      Allocates a new Thread object with the given target and name. target - the object whose run method is called.name - the name of the new thread.
    • Thread

      public Thread(String name)
      Allocates a new Thread object with the given name. Threads created this way must have overridden their run() method to actually do anything. name - the name of the new thread.
  • Method Details

    • activeCount

      public static int activeCount()
      Returns the current number of active threads in the virtual machine.
    • currentThread

      public static Thread currentThread()
      Returns a reference to the currently executing Thread object.
    • getName

      public final String getName()
      Returns this thread's name. Note that in CLDC the name of the thread can only be set when creating the thread.
    • getPriority

      public final int getPriority()
      Returns this thread's priority.
    • interrupt

      public void interrupt()
      Interrupts this thread. In an implementation conforming to the CLDC Specification, this operation is not required to cancel or clean up any pending I/O operations that the thread may be waiting for.
    • isAlive

      public final boolean isAlive()
      Tests if this thread is alive. A thread is alive if it has been started and has not yet died.
    • join

      public final void join() throws InterruptedException
      Waits for this thread to die.
      Throws:
      InterruptedException
    • run

      public void run()
      If this thread was constructed using a separate Runnable run object, then that Runnable object's run method is called; otherwise, this method does nothing and returns. Subclasses of Thread should override this method.
      Specified by:
      run in interface Runnable
    • setPriority

      public final void setPriority(int newPriority)
      Changes the priority of this thread.
    • sleep

      public static void sleep(long millis) throws InterruptedException
      Causes the currently executing thread to sleep (temporarily cease execution) for the specified number of milliseconds. The thread does not lose ownership of any monitors.
      Throws:
      InterruptedException
    • start

      public void start()
      Causes this thread to begin execution; the Java Virtual Machine calls the run method of this thread. The result is that two threads are running concurrently: the current thread (which returns from the call to the start method) and the other thread (which executes its run method).
    • toString

      public String toString()
      Returns a string representation of this thread, including the thread's name and priority.
      Overrides:
      toString in class Object
    • yield

      public static void yield()
      Causes the currently executing thread object to temporarily pause and allow other threads to execute.
    • getStackTrace

      public StackTraceElement[] getStackTrace()