Фючърси в Scala и Akka

С какво Scala Futures се различава от Akka Futures, единият по-добър ли е от другия? Концептуално те изглеждат подобни, което прави неблокиращото, асинхронно програмиране лесно.


person user2456976    schedule 09.09.2013    source източник
comment
възможен дубликат на Standard lib или Akka за Scala.2.10.1?   -  person pagoda_5b    schedule 09.09.2013


Отговори (3)


От версия 2.10, стандартната библиотека на scala интегрира повечето версии на Futures, идващи от различни библиотеки (akka, twitter, dispatch, ...), за да създаде изпълнение по подразбиране [базирано на версията на akka].

Най-новите библиотеки на Akka (от 2.1 IIRC) директно използват гореспоменатата реализация от стандартната библиотека 2.10, така че не е нужно да избирате дали сте в текущия влак за доставка.

Можем да кажем, че „фючърсите на Scala и Akka вече са обединени“ ... по много начини

person pagoda_5b    schedule 09.09.2013
comment
По един начин това е точно, по друг начин го имате с главата надолу. - person itsbruce; 10.09.2013
comment
Да, прав си, версията на scala 2.10 всъщност е на akka. Опитвах се да предам процеса, който води до интегриране на всички тези бъдещи реализации в споделен API. Всъщност отговорът ти ми харесва повече. - person pagoda_5b; 10.09.2013

Бъдещето, което виждате в scala, е много вдъхновено от библиотеката Future на Twitter и библиотеката Future на Akka. Всъщност това е най-доброто от двете с малки настройки тук и там. (Има публикация, обясняваща всичко това, но не мога да намеря връзката към нея :( )

Документацията на akka вече е модифицирана, за да използва бъдещето Scala SDK, а не своя собствена. Надявам се това да отговори.

person Jatin    schedule 09.09.2013

Актьорите Akka са библиотеката с актьори по подразбиране за Scala 2.10, а библиотеката scala.actors е отхвърлена в Scala 2.11; хората се съветват да използват библиотеката akka.actors и има Ръководство за мигриране на актьори за хора, които вече използват собствени актьори на Scala. Така че използвайте актьорите Akka, защото родната версия на Scala няма да получи повече любов.

От друга страна, тъй като актьорите Akka стават стандартни в Scala, различните библиотеки за едновременност на Scala са актуализирани, за да работят с актьори Akka. Това означава, че от страна на Akka цял куп алтернативни библиотеки, предоставени от тях, вече не са необходими. Това е обяснено в тяхната Akka 2.0 до 2.1 ръководство за миграция

person itsbruce    schedule 10.09.2013