@ Override protected void processTerm ( int linger ) { // Double termination should never happen. assert ( ! terminating ) ; // Send termination request to all owned objects. for ( Own it : owned ) { sendTerm ( it , linger ) ; } registerTermAcks ( owned . size ( ) ) ; owned . clear ( ) ; // Start termination process and check whether by chance we cannot // terminate immediately. terminating = true ; checkTermAcks ( ) ; }
steps to the beginning of the termination process .