Zastanawiałem się, czy możliwe jest ustawienie priorytetu IntentService
, jak to możliwe, z numerem Thread
. Jak dotąd niczego nie znalazłem.Jak ustawić Priorytet IntentService w Androidzie
Odpowiedz
Zastosowane przez użytkownika HandlerThread
nie jest narażone na działanie zestawu SDK. Jego priorytetem jest Process.THREAD_PRIORITY_DEFAULT
jako priorytet.
Należy pamiętać, że IntentService
to 143 linie kodu, w tym białe spacje i komentarze, więc możesz rozważyć sklonowanie go tak, aby miał jeden z priorytetem, którego szukasz.
Zmieniłem priorytet IntentService za pomocą: "android.os.Process.setThreadPriority (android.os.Process.THREAD_PRIORITY_BACKGROUND);" w konstruktorze klasy IntentService.
W moim przypadku to było zmieniane od: "Process.THREAD_PRIORITY_DEFAULT", który jest zero (0) do "Process.THREAD_PRIORITY_BACKGROUND", która jest dziesięć (10), a wynik był widoczny.
Zmieniasz priorytet wątku, który tworzy IntentService, a nie priorytetem wątku, w którym działał program obsługi. Zobacz akceptowaną odpowiedź, aby uzyskać więcej informacji. – espinchi
Można ustawić Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)
w metodzie intencji usługi onHandleIntent()
.
Rozwiązanie autorstwa CommonsWare również działa. Ten jest jednak prostszy.
Tylko po to, aby było jasne - domyślnie IntentService
priorytet ma wartość domyślną - Process.THREAD_PRIORITY_DEFAULT
, ponieważ korzysta z niego wewnętrznie: HandlerThread
. Możesz użyć Process.setThreadPriority(Process.THREAD_PRIORITY_BACKGROUND)
w OnHandleIntent(), lub cokolwiek zasugerowała CommonsWare w odpowiedzi.
niektórzy ludzie podnieśli to jako bug. i dostępne jest również patch.
- 1. Poczta PHP() - Jak ustawić priorytet?
- 2. Delayed_Job, Jak ustawić priorytet dla metody user_mailer.rb
- 3. Czy można ustawić priorytet wątków w Stream.parallel()?
- 4. Jak ustawić priorytet dla domyślnych metryk odstępów w formacie wizualnym?
- 5. jak JUnit test IntentService
- 6. NetworkOnMainThreadException w IntentService
- 7. Jak ustawić datę wygaśnięcia w Androidzie
- 8. jak ustawić szerokość w Androidzie używając javascript?
- 9. Jak ustawić obraz tła w Androidzie
- 10. Jak ustawić wersję gradle w Androidzie 1.3?
- 11. Jak zdobyć FusedLocation z IntentService
- 12. Jak uruchomić IntentService od WakefulBroadcastReceiver
- 13. Jak zmienić priorytet procesu?
- 14. Ustawienie Żądanie Priorytet Volley
- 15. Zatrzymywanie IntentService z działania
- 16. Co oznacza priorytet w Firebase?
- 17. HandlerThread vs IntentService
- 18. StartForeground for IntentService
- 19. Dalsze wyjaśnienie dotyczące IntentService
- 20. IntentService nie jest wywoływany
- 21. Priorytet Ograniczeń Autolayout
- 22. ustawić limit czasu okno dialogowe w Androidzie?
- 23. Jak zmienić priorytet akcji w Wordpress?
- 24. Android Jak kolejkować wiele intencji na IntentService
- 25. Priorytet zdarzenia Hammer.js
- 26. Priorytet powiadomień push systemu iOS
- 27. Priorytet operatorów w impulsie :: duch?
- 28. używanie IntentService do odtwarzania MediaPlayer
- 29. Jak ustawić wiele typów danych wejściowych w EditText na Androidzie?
- 30. jak ustawić wysokość względnego układu dynamicznie w Androidzie
Dzięki Mark. Właśnie to zrobiłem. – smith324