2013-08-05 13 views
10

Chciałbym, aby niektóre rzeczy były od siebie oddzielone (w tym przypadku 15-sekundowe zadanie interwałowe, które odpytuje bazę danych oraz biblioteka strony trzeciej, która odbiera powiadomienia push z naszego serwera sip). Chciałbym zachować je oddzielnie, aby kod był bardziej czytelny, ale uważam też, że ogólnie rzecz biorąc ogólnie jest czystsze, aby zachować oddzielne zadania, wiesz, oddzielić ...
To powiedziawszy, czy złą praktyką jest korzystanie z wielu usług dla to? Czy może lepiej skorzystać z jednej usługi z wieloma wątkami? Czy możliwe jest korzystanie z więcej niż jednej usługi?
Tak naprawdę nie próbowałem niczego, nie jestem chętny do przepisania kodu, jeśli może to być złe.Czy jest złą praktyką korzystanie z wielu usług w tle w jednej aplikacji na Androida?

+0

Zobacz http://stackoverflow.com/questions/15384564/call-multiple-services-in-background-in-android – devnull

+1

@devnull Dzięki za link, ale to tak naprawdę nie odpowiada na moje pytanie. Chcę wiedzieć, czy posiadanie wielu usług jest złe. – Kevin

+0

Ten link miał na celu * sugerowanie *, że ludzie zalecają używanie AsyncTask. Nie powiedział nic więcej. – devnull

Odpowiedz

4

Przede wszystkim usługa nie oznacza, że ​​działa osobny wątek, ale myślę, że właśnie to chcesz zrobić. Jeśli uruchamiasz kilka wątków, nie ma możliwości, by AndroidOS je usunął, poza zabiciem całej maszyny Dalvik VM. A to oznacza, że ​​nie masz możliwości poznania, kiedy masz zamiar zostać zakończonym. Jeśli masz usługę z wątkiem i korzystasz z właściwego zarządzania cyklem życia, tj. Zabijaj wątek, gdy Android powiadomi usługę, że zamierza ją zatrzymać, wtedy łatwo jest utrzymać stan.

Jeśli chodzi o Twoje pytanie: użyj kilku usług z jednego wątku każdy

Powiązane problemy