this synchronized is still blowing my mind.  We're coordinating between two threads, so this may be overkill...