public class MyClass { private boolean done = false; public void stopLooper() { done = true; } public void startLooper() { (new Thread("looper") { public void run() { while (! done) { // do something that takes a little while } } }).start(); } }