We've moved! — MindVault360 is now HexLab. Better design, more content & premium notes.

Visit HexLab →

MindVault360 has moved!

We've upgraded to HexLab — a faster, more professional platform with better content, premium notes, and a modern design.

Visit us at hexlab

Monday, September 2, 2024

Thread Scheduler

 

(Tap the post to see more)


The thread scheduler is responsible for managing the execution of threads. The Java Virtual Machine (JVM) employs a preemptive, priority-based scheduling algorithm to determine which thread should run next. Threads with higher priority are scheduled to run before threads with lower priority.


Example 01:

package com.java.Multi_threading;

class MyThread extends Thread {

public MyThread(String name) {

super(name); // Set the thread name

}


public void run() {

for (int i = 1; i <= 5; i++) {

System.out.println(getName() + " - Priority: " + getPriority() + " - Count: " + i);

try {

Thread.sleep(100); // Sleep to simulate work and allow context switching

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}


public class ThreadSchedulerExample {

public static void main(String[] args) {

// Create three threads with different priorities

MyThread t1 = new MyThread("Thread-1 (Low Priority)");

MyThread t2 = new MyThread("Thread-2 (High Priority)");

MyThread t3 = new MyThread("Thread-3 (Medium Priority)");


// Set thread priorities

t1.setPriority(Thread.MIN_PRIORITY); // Priority 1

t2.setPriority(Thread.MAX_PRIORITY); // Priority 10

t3.setPriority(Thread.NORM_PRIORITY); // Priority 5


// Start the threads

t1.start();

t2.start();

t3.start();

}

}




← Back Next →

Labels:

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home