Mam aplikację dla systemu Android, która używa licznika czasu do wywoływania AsyncTask co 5-10 sekund (przy użyciu java.util.Timer i java. util.TimerTask). AsyncTask pobiera dane obrazu z bazy danych Amazon AWS S3 i ładuje obraz dla głównej aktywności UI.Błąd systemu Android: "Nie można utworzyć epollo wystąpienie" lub "Nie można utworzyć stopu wake" "
To działa dobrze przez godzinę lub dwie, ale potem pojawia się tajemniczy komunikat o błędzie i aplikacja zostaje zabita. Komunikat o błędzie pochodzi od „Looper” i mówi, albo:
Could not create epoll instance. errno=24
lub
Could not create wake pipe
Poszukiwania w internecie wydaje się wskazywać, problem może mieć coś wspólnego z deskryptorów (zbyt wiele otwartych plików deskryptory ?). Przejrzałem kod, ale nie widzę żadnego miejsca, w którym pliki, strumienie lub połączenia nie są zamknięte.
Kiedy aplikacja zostanie zabity, logcat ma wiadomość z Android Runtime, który mówi:
FATAL EXCEPTION: main
Czy ktoś ma pojęcia o tych wiadomościach lub jak to naprawić? Dziękuję Ci!
Napisz kod. – Wug
Jest dużo kodu i nie jestem pewien, które części mogą być przyczyną błędu. W większości szukam wskazówek, co może powodować komunikat o błędzie, taki jak ten. Dzięki. – gcl1
Podejrzewam, że internet ma rację co do deskryptorów plików, opublikuj część wywoływaną przez timer. – Wug