I'm using Netbeans 6.9.1 on Ubuntu 10.04 x86 64 to work with Threads in Java. I'm having trouble with the yield() function because when I use it, the current thread continues to run instead of pausing and allowing other threads to execute.

The code below is a simple example copied from here (https://www.scaler.com/topics/yield-method-in-java/) of using yield to run two threads. Instead of running the first thread, printing one line, and then stopping it, the programme finishes thread 1 and then runs thread 2, since the yield method is not invoked. I tested this code on Windows and it works flawlessly! So I'm wondering if there are any issues with using this strategy on Ubuntu or 64bit systems.
//ThreadTest.java
public class ThreadTest extends Thread{
    public ThreadTest (String name){
        super(name);
    }
    public void run(){
        for (int i=0;i<5;i++){
            System.out.println(getName()+" - "+i);
            yield();
        }
        System.out.println(" END "+getName());
    }
}
 
//Main.java
public class Main {
   public static void main(String[] args) {
        ThreadTest t1 =new ThreadTest("Thread1");
        ThreadTest t2 =new ThreadTest("Thread2");
        t1.start();
        t2.start();
   }
}
Any suggestion, please?