Thread Issues
Access to shared objects may result in race conditions. One can guard against this mutexing or synchronizing blocks of code:
public synchronized void increaseAccount(){
Pervasive use of semaphores can, if improperly designed, result in deadlock conditions.