2012-07-13 11 views
10

Java systemu operacyjnego Android i Java Oracle są nieco inne. Czy to możliwe, aby korzystać z następujących podmiotów lub współprogramAlternatywny sposób na wątki pod Androidem

również dla Androida w celu uniknięcia wykorzystać wątki i podzielić się więcej kodu pomiędzy Java dla systemu Android i Java firmy Oracle? Czy są dostępne inne frameworki dla obu wersji Javy.

Z góry dziękuję.

+1

Przez „alternatywa do wątków” masz na myśli alternatywę dla klasy "Thread" lub wątków? – Tudor

+0

Chciałbym uniknąć synchronizacji wątków lub martwych blokad i chciałbym mieć coś w stylu modelu aktorów lub coroutines również dla Androida. Czy jest coś na Androida? – user977828

Odpowiedz

4

Należy starać aktorów z wersji Java Akka: http://doc.akka.io/docs/akka/snapshot/java/untyped-actors.html

Umożliwia łatwą uprawę topologii aktora z wykorzystaniem najlepszych praktyk (bez bezpośredniego dostępu do aktorów przez odniesienie Java, ograniczającego niepowodzeń w strefach, ograniczając przeciążenie przy użyciu stref Scheduler itd.) - wszystkie z nich są opisane w bezpłatną kopię „Scala grubość” książki: http://typesafe.com/resources/scala-in-depth

Oto przykład (z demo http://vimeo.com/20303656) dynamicznego zachowania podmiotów korzystających Akka FSM na Androida: https://github.com/akka/akka/blob/master/akka-samples/akka-sample-fsm/src/main/scala/DiningHakkersOnBecome.scala

Ponadto można spróbować lekkich aktorów z Java funkcjonalne: https://github.com/functionaljava/functionaljava/blob/master/core/src/main/java/fj/control/parallel/Actor.java

Większość minimalistycznej wersji aktora dla JVM jest tutaj: https://github.com/plokhotnyuk/actors/blob/master/src/test/scala/com/github/gist/viktorklang/Actor.scala (jej cechy opisane tutaj: How to implement actor model without Akka?)

+2

Dziękuję. Akka zależy od biblioteki uruchomieniowej Scala, która ma ponad 8 Mb. Gpars http://www.gpars.org/guide/guide/2.%20Getting%20Started.html#2.7%20Java%20API%20-%20Using%20GPars%20from%20Java ma tylko 450 KB. j-javaactors http://www.ibm.com/developerworks/java/library/j-javaactors/ ma około 400 KB. Istnieje również http://code.google.com/p/functionaljava/downloads/list około 2 MB i http://code.google.com/p/guava-libraries/wiki/ListenableFutureExplained – user977828

Powiązane problemy