Erlang并发和核心管理
Erlang concurrency and core management
所以我看了很多年前(2008年)的视频,乔·阿姆斯特朗(Joe Armstrong)在其中解释了埃尔兰(Erlang)的背景。视频链接他有一个很好的理由,我在问的是他在13:07说话时:
[erlang是一种同时语言;我的意思是 该语言是编程语言的一部分。他们不属于 到操作系统。这确实是语言的问题 像Java和C 一样,线程不在编程中 语言;线程是操作系统中的东西 他们继承了操作系统中的所有问题。之一 问题是内存管理系统的粒度...
他继续谈论线程管理的问题,以及该语言和操作系统之间的断开连接的关系。然后继续说,出于这个原因,Erlang是独特的位置来利用多核技术,即它可以"直接"直接"管理而无需使用线程吗?要么是理解他是错误的,或者可能在过去的8年中出现了一种或多种新语言,以挑战这个领域的Erlang?
非常感谢可能阐明此问题的任何参考文献或评论。
erlang vm spawns OS线程(默认为每个CPU核心),并且它们运行过程调度程序。(VM还可以为IO操作,驱动程序和NIFS产生更多线程,但它们不运行ERLANG代码。)调度程序计划在Erlang进程中安排代码执行。与操作系统过程和操作系统相比,每个ERLANG过程都是(可以是并且应该)非常轻巧,并且彼此完全分开。它允许使用多功能HW的独特设计,具有轻松,安全性,鲁棒性和优雅性。有关映射Erlang流程到核心的更多信息,请参阅我对其他问题的答案。有关详细说明的详细说明,请参见Erlang调度程序的详细信息及其为何重要的博客。
相关文章:
- 当vector是tje全局变量时,c++中vector的内存管理
- 如何找出GDB的SIGTRAP核心转储的根本原因
- C++映射分割错误(核心转储)
- 尽管测试成功,CppUnit测试核心仍被丢弃.为什么
- 在c++中初始化矩阵时出现分段错误(核心转储)
- C++核心准则 C35 对于接口类"A base class destructor should be either public and virtual, or protected and nonv
- MPI突然停止了对多个核心的操作
- 在多个核心中处理一个HTTP请求
- 如何维护资源管理器项目视图中当前可见的项目列表
- 如何处理来自核心指南检查器的关于gsl::at的静态分析警告
- 如何在GTK程序运行时禁用屏幕保护程序/电源管理/屏幕消隐
- 资源管理设计模式
- 使用"Task"函数指针队列定义作业管理器
- 在c++中键入向量中的所有值后,得到分段错误(核心转储)
- 实现动态插件管理器
- Alt+Enter 在 Win32 应用中,管理大小调整和分辨率
- 运算符继承和 cpp 核心准则 c.128 的问题
- libcurl 和 DNS ttl 中的内部连接管理
- 浮点异常(核心转储)#694457
- Erlang并发和核心管理