Dal codice che hai postato credo che tu stia utilizzando RMI.
Se è così, allora è molto probabile che la chiamata del Thread faccia riferimento ad un "ambiente" diverso, ovvero che l'oggetto Thread risieda su una JVM diversa, che quindi non sa nulla di ciò che è avvenuto sul vettore ad opera dell'altra JVM.

Io non sono pratico di RMI, ma ho il forte sospetto che si tratti di questo.

Ad ogni modo, non è bello avere oggetti pubblici e addirittura statici. La programmazione ObjectOriented prevederebbe di avere oggetti privati e di generare un punto di accesso ad essi tramite un metodo.


Ciao.