I just finished the task but, can someone explain to me when this will be useful? why do we have to same the share objects in each thread created? and whats the purpose of isCurrentThreadInterrupted inside the run() method. thanks ;)