اول تستش کردی ببینی اصن کار می کنه یا نه!؟
ObjectStream ها برای Serialization اشیا بکار میرن و توی specificationشون هست که توی کانستراکتور تلاش در خوندن ورودی می کنن وگرنه بلاک میشن. ترکیبشون با socketها دقیقن همین موضوع رو پیش میاره.
برای حل این موضوع یا باید بینوشون یه چیزی مثل یه بافر قرار بدی تا پکت های ورودی رو به صورت بافر و با تنظیمات عوض شده برسونی به ObjectStreamت تا بلاک نشه (همین مثال بالا که خودم تستش نکردم و مطمین نیستم درست کار کنه یا نه) یا اینکه از nio استفاده کنی.
شاید اصن مناسبتر هم باشه که از Object Serializationاستفاده نکنی! این API دستت رو بسته با این کارش دردسر برات درست ایجاد میکنه. به جای ObjectStreamها خودت ورودی خروجی رو کنترل کن.