Hi,
ich würde dich auch gerne nochmal fragen, warum du das so brauchst.
Wenn ich mich nicht ganz irre, kannst du mit einem blockierenden Zugriff Synchronität erreichen, aber damit würdest du halt (wie der Name doch verrät) die restlichen Prozesse blockieren. Wenn du das Problem umgehen willst, müsstest du mit Threads anfangen und nicht-sequentielle Programmierung ist ein Komplex der für sich steht.
Die Frage ist halt echt, ob es nötig ist in deinem Fall.
Imho wäre ein zustandsfreies Protokoll wie
TCP dann einfach ungeeignet. Dieses kann dir keine Verbindung garantieren, du weißt also nicht, wann und in welcher Reihenfolge dein Packete ihren Empfänger erreichen. Natürlich gilt für die Antworten genau das Selbe. Du weißt nicht mal, ob der Server nicht zwischen dem Empfang deiner Nachricht und dem Beantworten noch existiert. Wenn der sich spontan selbst sprengt, von Außerirdischen entführt wird oder einfach abstürzt, dann hättest du schon das Problem, dass du ewig wartest (und nie eine Antwort bekommst).
Sinnvoller ist, dass du auf das entsprechende Event wartest, aber eben mit einem Timeout, dass du groß genug wählst (der Server braucht ja auch mal ein paar ms).
Gruß Der Unwissende