Ø  I probably missed a lot of things, so feel free to correct me

Go’s CSP is based on lightweight threads (goroutines), messaging (channels), 
and “select” – all of which are built into the language, not a library.  Being 
built in makes then easier to use than dealing with libraries.  Locks and 
atomics are also offered as part of the standard library.

 

>From your list, it seems that you are considering 3rd party libraries, too.  
>In this case, you are really looking at a lot of implementations built using 
>the basic tools.  If you want to learn concurrency, perhaps you should be 
>planning to build these yourself rather than using ones written by others.

 

John

    John Souvestre - New Orleans LA

 

From: golang-nuts@googlegroups.com [mailto:golang-nuts@googlegroups.com] On 
Behalf Of yinsi....@gmail.com
Sent: 2017 February 05, Sun 18:23
To: golang-nuts
Subject: [go-nuts] [Beginner question] Which language supports more concurrency 
models: Go or Java?

 

Question is in the title.

I want to learn more about concurrency. So I am looking for a language that can 
teach me the greatest number of concurrency models.

It seems that Java supports these models:

*       Plain old threads & locks
*       In addition, Java also has various concurrent data structures in the 
java.util.concurrent package 
<http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/package-summary.html>
  (ConcurrentHashMap, CopyOnWriteArrayList, etc)
*       Actor model: Akka <http://akka.io/> 
*       CSP / lightweight threads & channels: Quasar 
<http://blog.paralleluniverse.co/post/49445260575/quasar-pulsar> 
*       Software Transactional Memory: built in into Clojure (I don't know if 
it can be used from Java), Akka version <= 2.2
*       Dataflow: Quasar <http://blog.paralleluniverse.co/2014/02/20/reactive/> 

I'm not very familiar with Go, but here's what I found:

*       CSP: built in into the language
*       Actor model: Proto Actor <http://proto.actor/> 
*       I probably missed a lot of things, so feel free to correct me




Thank you in advance,

Rio

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to