C++中嵌入Python的多处理

2024-05-23 18:10:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Python程序,但是似乎我不能真正地扩展它,因为如果缺乏多处理。我们增加了线程,但由于它仍然运行在一个核心上,我们无法进行足够的扩展。在

我看到了^ a1},可以在C++程序中嵌入Python。所以我认为在C++中进行多处理,在这些过程中调用一个不能转换为C++的Python函数。在

如果我这样做:

1:我的想法是对的,那我们就可以充分利用服务器了?在

2:Python代码是在程序启动时解释一次,还是每次调用函数都需要解释一次?换言之,这个函数还会像现在这样快吗?在

编辑:

我好像不太清楚。在

在我对Python的理解中,有多线程和多处理。多线程将使用相同的内核,并且可以共享内存空间[1]。多处理可以使用多个内核,但不能在进程之间共享内存。在

我有3个主要功能,它们都接收websocket数据并将其放入内存中。在

然后在事件中调用一个需要访问这个内存的函数。在

然而,调用此函数的次数和websocket提要的频率(每秒的消息数)正在快速增长。一个cpu核心不能处理这个问题。在

<>我不得不说我没有C++的经验,但是我认为C++可以在多个内核/ CPU上分配工作负载,同时保持对内存的访问。所以我们可以通过获得更多的内核/cpu来扩展


Tags: 函数内存代码程序服务器核心过程a1