thread로 계속 패킷을 받고, 그 패킷에서 필요한 내용을 배열에 저장하여 다른 핸들러로 넘겨주는 

작업을 하려고 합니다.

어떻게 생각하면 굉장히 쉬운 문제일수도 있는데 실제로 실험을 해 보면 

계속 같은 값이 들어옵니다..



코드는 필요한 부분만 축약 시켰습니다.



private Vector<RxaMessage> Msg = new Vector<RxaMessage>();
private RxaMessage rcvdMsg = null; 

public void run(){
while(true){
rxaSocket.receive(packetBuffer); // 패킷을 받고, 

handlePacket(packetBuffer.getData()); // 패킷의 내용을 읽어서
    // notifyMessageToAll(Msg); // 다른 핸들러에 넘김
}
}


private void handlePacket(byte[] buffer){

// buffer로 부터 rcvdMsg 의 내용을 채움.
 
rcvdMsg = buffer.getData();    

Msg.add(rcvdMsg);

}




이런식으로 되면 패킷의 내용이 1, 2, 3, 4, 5 으로 온다면

vector의 내용이 

1, 2, 3, 4, 5 가 되는 것을 기대 하였으나, 

5, 5, 5, 5, 5 가 나오게 됩니다.

1, 2, 3, 이 들어오면

3, 3, 3 이 되고..

어쩌면 자바의 문제일 수도 있는데, 제 나름대로 노력해서 알아보려 하였으나 여의치가 않았습니다.

실력이 이렇게 부족해서.. 참 자괴감도 많이 듭니다. ㅠㅠ


vector 뿐만이 아니고 ArrayList, 그냥 배열.. 이런것도 마찬가지로 

최후의 내용이 가득차게 되어서.. 


꼭 해야 하는건데 제힘으로 해결하기 힘들어서 여기에 도움을 요청해 봅니다.