Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多线程的正确方法_Java_Multithreading_Akka_Erlang_Gpu_Clojure - Fatal编程技术网

Java 多线程的正确方法

Java 多线程的正确方法,java,multithreading,akka,erlang,gpu,clojure,Java,Multithreading,Akka,Erlang,Gpu,Clojure,我最近思考了最有效的多线程代码的一般方法。与并发集合一样,比较和交换等原子机制用于提供队列等集合的高效实现。我想知道是否有新的方法来编写多线程代码,例如在java中,而不是使用纯Thread实例?线程池的使用频率可能更高吗?很抱歉,我盲目地向您指出了线程池,但是如果您解决了这个问题,您可能不需要使用一些较低级别的并发控制。这实际上应该取决于什么最适合您的应用程序需求/设计 看一看课程和课程。两者都使管理/维护线程池变得更加简单。出现了一些新的方法: 消息传递和演员模型,参见(好吧,这个想法来自

我最近思考了最有效的多线程代码的一般方法。与并发集合一样,比较和交换等原子机制用于提供队列等集合的高效实现。我想知道是否有新的方法来编写多线程代码,例如在java中,而不是使用纯
Thread
实例?线程池的使用频率可能更高吗?

很抱歉,我盲目地向您指出了线程池,但是如果您解决了这个问题,您可能不需要使用一些较低级别的并发控制。这实际上应该取决于什么最适合您的应用程序需求/设计


看一看课程和课程。两者都使管理/维护线程池变得更加简单。

出现了一些新的方法:

  • 消息传递和演员模型,参见(好吧,这个想法来自…)

  • -具有数千个简单微线程的大规模多线程

  • 事务内存(请参阅:)


对我来说,这有点过早优化的味道。你确定你需要在代码复杂性方面受到打击吗?一点也不,我只是想知道,在如何分配和使用线程方面,这些天是否有向某些多线程编程的转变。这个问题太公开了,有一些关于这方面的书,我不知道有任何转向某些多线程编程。但是在多线程编程中,有一个从基于锁的多线程到基于并发(使用原子操作)的多线程的转变-threading@Nathan休斯:每一个主题都有完整的书。材料的范围是真正改变的。这个问题对我来说似乎很好,只需回答更一般的问题,而不是问一个非常具体的问题。