I have a number of heavy math/cpu usage routines and gather it would be good to make them separate threads so things like JProgressBar and other stuff will work correctly.

Is this all I need to do to make them runnable in their own threads?

final Runnable HM = new Runnable()
public void run()
heavy_math(x, y, z);

Is there a general method I could call before and after a heavy math routine that would do the same thing?

Is it possible that the threads will get out of sync?

I haven't gotten a handle on this thread stuff yet so I must ask dumb questions.