Basically I want a function to be called every say, 10 milliseconds.
How can I achieve that in Java?
I would say you would create a thread and in the thread loop add a System.sleep(10) to make the thread "sleep" for 10 ms before continuing.
Using ExecutorService
ScheduledExecutorService es = Executors.newSingleThreadScheduledExecutor();
es.scheduleAtFixedRate(() -> System.out.println("Hello World! from ScheduledExecutorService"), 10000, 10000, TimeUnit.MILLISECONDS);
//es.shutdown();
Or by using Timer
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
System.out.println("Hello World! from Timer");
}
}, 10000, 10000);
//timer.cancel();
Cheers!