小编Has*_*yed的帖子

Erlang文档/ SMP:每台机器或每个应用程序的单节点和多节点,以及可能出现的混乱

我正在研究Erlang的流程模型.关于Erlang 的技术报告(第3节,第2段)我遇到了障碍:

这解释了为什么在某些情况下,使用一个调度程序而不是在具有多个调度程序的一个SMP VM上运行多个SMP VM可以更高效.当然,运行多个VM需要应用程序可以在许多并行任务中运行,这些任务彼此之间没有或很少有通信.

现在这一段令我困惑; 我可以看到单进程多调度程序场景,但是我没有看到使用单个调度程序的多个进程; 据推测,每个进程都有不同的节点名称,这意味着某个应用程序无需修改就无法与此模型一起使用; 在报告中提到了不需要修改的优点作为SMP的一个关键特征.如果多个进程具有相同的节点名称,那么由于Erlang-process间的消息风暴,性能将是灾难性的 - 这假设使用了内存中的健忘症.是否有一些过程模型没有在文章中介绍,我在这里缺少?

作者试图在这说什么?他是否试图建议为多进程单调度程序案例重写一个应用程序(将多个唯一的节点名称考虑在内)?

- 编辑1:澄清问题根源 -

通过讨论回答了这个问题; 以下是我遇到的麻烦的概述.

这个问题的问题在于,我记得,文档没有触及每个物理机器运行多个Erlang仿真器的情况 - 它总是表明仿真器代表你的物理机器(工业用途); 此外,从未考虑过必须明确划分程序以提高计算效率的方案.这突然的介绍一直是我的悲哀的源头.

该约定仍然偏向于创建大量进程,并且未来对于Erlang的SMP仿真器进行了许多改进,这意味着假设有利的应用程序设计,每台机器的单个节点仍然是一个非常可行的选择.

erlang ipc scheduled-tasks smp

2
推荐指数
1
解决办法
1200
查看次数

C++通用编程的细微之处

我遇到的问题在以下代码中说明.

#include <iostream>

#define X 4

int main()
{

    std::cout << "should be 4: " << X << std::endl;
#define Y X + 4
    std::cout << "should be 8: " << Y << std::endl;

#undef Y
#define Y X+0
#undef X
#define X Y+1

    std::cout << "expecting 5: " << X << std::endl;
}
Run Code Online (Sandbox Code Playgroud)

错误:

test2.cc: In function ‘int main()’:
test2.cc:17: error: ‘X’ was not declared in this scope
Run Code Online (Sandbox Code Playgroud)

我试图模仿的模式是在代码/构建级别扩展程序(很像nginx模块在编译时如何连接).我需要构建一个可扩展的编译时结构,它可以通过向#include我的构建中添加s来进行扩展(可插入),从而生成一个boost-mpl-vector,其中包含一个包含所有插件的唯一名称.因此,如果X是唯一的结束名称,则X_0,X_1,X_2是沿着向量 …

c++ boost-mpl boost-preprocessor preprocessor-meta-program

2
推荐指数
1
解决办法
281
查看次数

const_cast在构造函数中可以接受

这是const_cast的有效用法吗?我在构造函数中使用它,它看起来如下:

KeyLiteObject(const char * extension, const char * swap_suffix)
        :    _extension(extension),
             _swap_suffix(swap_suffix),
             _swap_suffix_extension(swap_suffix) 
{
    const_cast<std::string*>(&_swap_suffix_extension)->append(_extension);
}
Run Code Online (Sandbox Code Playgroud)

是的,字符串永远不会改变.

c++ const-correctness

1
推荐指数
1
解决办法
323
查看次数

是否可以为ECS任务配置IAM角色?

我需要在docker入口点期间进行一些需要访问某些AWS资源的初始化.

我的应用程序也可以使用基于隐式角色的AWS访问,而不是在app config中配置密钥对.

IAM角色如何在任务中工作?我只能在ECS容器实例上找到IAM角色文档.

amazon-web-services amazon-ecs amazon-iam

0
推荐指数
1
解决办法
1184
查看次数