This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
In Swing / AWT, there are only two restrictions on calling repaint():
1) do it from the Event Dispatcher Thread.
2) make sure you don't get into an infinite repaint loop (e.g. by calling repaint while you're already painting).