在Python中抽象线程和多处理?

在Python中抽象线程和多处理?,python,Python,Python中是否有抽象线程和多处理的模块?我想在将来有一个在它们之间切换的选项 线程和多处理模块已经为此使用了类似的接口。如果不支持,多处理实际上会退回到线程化模块 您可以使用import multiprocessing as something和import threading as something在这两种看不见的方式之间切换 请注意,两者之间的数据共享是不同的,这可能会造成潜在的陷阱。正如jdi所指出的线程化和多处理模块已经为此使用了类似的接口。如果不支持,多处理实际上会退回到线程化模

Python中是否有抽象线程和多处理的模块?我想在将来有一个在它们之间切换的选项

线程和多处理模块已经为此使用了类似的接口。如果不支持,多处理实际上会退回到
线程化
模块

您可以使用
import multiprocessing as something
import threading as something
在这两种看不见的方式之间切换


请注意,两者之间的数据共享是不同的,这可能会造成潜在的陷阱。正如jdi所指出的
线程化
多处理
模块已经为此使用了类似的接口。如果不支持,多处理实际上会退回到
线程化
模块

您可以使用
import multiprocessing as something
import threading as something
在这两种看不见的方式之间切换


请注意,两者之间的数据共享是不同的,这可能会造成潜在的陷阱。正如jdi在上一条语句中所指出的那样。您必须坚持只使用
进程
,并避免使用一些共享数据容器,因为线程没有管理器<代码>进程
线程
共享相同的api。另一个问题是,即使您避免数据共享并通过消息(队列、作业启动参数和返回值等)执行所有操作,
多处理
也只能处理可拾取的值。如果您不确定最后想要哪一个,那么首先编写
多处理的代码几乎总是值得的。最后一条语句的粗体部分。您必须坚持只使用
进程
,并避免使用一些共享数据容器,因为线程没有管理器<代码>进程
线程
共享相同的api。另一个问题是,即使您避免数据共享并通过消息(队列、作业启动参数和返回值等)执行所有操作,
多处理
也只能处理可拾取的值。如果你不确定最终想要哪一个,那么首先为
多处理编写代码几乎总是值得的。你是否担心接口只有95%的兼容性而不是100%,或者你认为你需要某种接口/协议/抽象基类来抽象事物,比如,Java?您是否担心接口的兼容性只有95%而不是100%,或者您是否认为需要某种接口/协议/抽象基类来抽象事物,就像在Java中一样?