Ich habe weiter oben schon geschrieben, was damit beabsichtigt ist. Aber ich fasse es einfach nochmal kurz zusammen. Das ganze ist ein Plugin-Manager auf TCP Basis. Die Clients verbinden sich mit dem Server und können dann über TCP Nachrichten an andere Plugins, den Roboter oder den Server senden.
Der Code von Client.java oben ist sozusagen das "Kommunikations-Interface" für ein Plugin. Wenn sich ein Plugin verbindet wird ein neues Exemplar der Klasse Client angelegt und in einem Array gespeichert. Das Plugin kann dann Zeichenketten an das ihr zugewiesene Exemplar der Client Klasse senden und das wiederum leitet das an den Server weiter, der das Verarbeitet/weiterschickt.
Der Block oben ist ein Thread, der sofort, wenn eine neue Nachricht vom Plugin reinkommt das der messagePlugin()-Methode des Hauptprogramms (RSS) über gibt.

Kann das Problem darin liegen, dass der Fehler auftritt, weil nicht sofort eine Nachricht reinkommt?

Gruß, Jan.