This section explains methods of Thread class.
Thread Methods :
Thread class provides many method to handle different thread operations. Here we are defining some of them -
static int activeCount() - It returns number of
active threads in your current thread group.
static Thread currentThread() - It
returns reference of the current executing object.
String getName() - t returns name of the current
thread.
int getPriority() - It returns the priority of the thread.
boolean isDaemon() - it checks that the thread is a daemon thread or not.
run() : If we are constructing thread by using a separate Runnable run object, then run method of that Runnable object is called, otherwise, this method does nothing and returns.
setName(String name) - this method is used when you want to change name of your thread.
setPriority(int newPriority) - This method is used to set the priorty of the current thread.
sleep(long millis) - It puts the current executing thread to sleep for a given number of milliseconds.
start() - It starts the execution of the thread.JVM calls the run method of your thread.
yield() - This method pauses and allow other threads the temporal executing thread object.
Some other methods are - checkAccess(), countStackFrames(),,destroy(),
dumpStack(), enumerate(Thread[] tarray), getAllStackTraces()
getContextClassLoader(), getDefaultUncaughtExceptionHandler(), getId(),
getStackTrace(), getState(), getThreadGroup(), getUncaughtExceptionHandler(),
holdsLock(Object obj), interrupt(), interrupted(), isAlive(),
isInterrupted(), join(), join(long millis),
join(long millis, int nanos), resume(), setContextClassLoader(ClassLoader
cl), setDaemon(boolean on),
setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh),
setUncaughtExceptionHandler(Thread.UncaughtExceptionHandler eh),
sleep(long millis, int nanos), stop(), stop(Throwable
obj), suspend() , toString().
Example :
class RunnableThread implements Runnable {
Thread thread;
public RunnableThread() {
}
public RunnableThread(String threadName) {
/* Creating new thread */
thread = new Thread(this, threadName);
System.out.println(thread.getName());
/* Starting thread */
thread.start();
}
public void run() {
/* Display info about current thread */
System.out.println(Thread.currentThread());
}
}
public class RunnableThreadExample {
public static void main(String[] args) {
Thread th1 = new Thread(new RunnableThread(), "thread1");
Thread th2 = new Thread(new RunnableThread(), "thread2");
RunnableThread th3 = new RunnableThread("thread3");
/* Threads start */
th1.start();
th2.start();
try {
Thread.currentThread();
/* delay for a second */
Thread.sleep(1000);
} catch (InterruptedException e) {
}
/* Display info about current thread */
System.out.println(Thread.currentThread());
}
}
Output :
thread3 Thread[thread3,5,main] Thread[thread2,5,main] Thread[thread1,5,main] Thread[main,5,main]
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.