Używam ObjectInputStream
do wywoływania readObject
do odczytu w postaci szeregowej Objects
. Chciałbym uniknąć tego bloku metod, więc zamierzam użyć czegoś takiego jak Inputstream.available()
.Serializacja Java, ObjectInputStream.readObject(), sprawdź, czy blokuje
InputStream.available()
powie Ci, że są dostępne bajty i że read()
nie będzie blokować. Czy istnieje odpowiednia metoda do seriilizacji, która powie ci, czy są dostępne Object
s, a readObject
nie będzie blokować?
Jeśli w ogóle się różnią, możesz stracić dużą. Jeśli wybierzesz N, który jest większy od następnego obiektu, możesz przejść do stanu zakleszczenia, w którym oczekujesz więcej niż bieżący obiekt, a nadawca nie wyśle następnego obiektu, dopóki nie odpowiesz na poprzednie. . Lepiej upewnić się, że przed użyciem tego podejścia istnieje nieskończona ilość danych wejściowych! – PanCrit