How to run main thread as a real time thread

1.6k Views Asked by At

In real time Java one can create a real time thread and run it via the following methods:

RealtimeThread rt = new RealtimeThread(){
    public void run(){
        /*do work*/
    }
};
rt.start();

RealtimeThread rt2 = new RealtimeThread();
rt2.start();

RealtimeThread rt3 = new RTThread();
rt3.start();

where RTThread is a class which extends RealtimeThread. But clearly the above approaches does not work when it comes to main. So is there a way to do it? My motivation for this is that I want only 2 real time threads to run. If I start two real time threads within main, won't there be a total of 3 threads?

3

There are 3 best solutions below

1
ratchet freak On BEST ANSWER

if the RealtimeThreads are not deamon threads you can let the main thread finish and keep everything running inside the RealtimeThreads

public class BootStrap extends Runnable{

    public static void main(String[] args){
        new RealtimeThread(new BootStrap()).start();
        //main finishes running and stops
    }

    public void run(){
    //...
    }
}
0
aioobe On

If I start two real time threads within main, won't there be a total of 3 threads?

No. If you start two threads, then return / "fall off the edge" of the main method, you'll have two threads running.

1
user207421 On

Aren't all threads RealTimeThreads in RTJ? including the main thread?