public int waitForChange ( ) { if ( m_lTimeOut <= 0 ) return TIMEOUT_ERROR ; // Timed out m_bWaiting = false ; synchronized ( this ) { long lStartTime = System . currentTimeMillis ( ) ; try { m_bWaiting = true ; this . wait ( m_lTimeOut ) ; } catch ( InterruptedException e ) { e . printStackTrace ( ) ; } m_lTimeOut = m_lTimeOut - ( System . currentTimeMillis ( ) - lStartTime ) ; } if ( m_bWaiting == false ) return DBConstants . NORMAL_RETURN ; // Was interrupted by a field change m_bWaiting = false ; return TIMEOUT_ERROR ; // Timed out }
Wait for this field to change .