在 Python 中序列化流程实例
Serializing a process instance in Python
我想序列化一个 class 对象,以便我可以通过串行连接将它发送到另一台设备。
对象看起来像这样:
class runningprocesses(object):
def __init__(self):
self.processes = WMI.InstanceOf('Win32_Process')
我正在尝试使用 pickle 将其序列化并将其存储到一个变量中,以便我可以将其发送出去,但是每当我尝试对该对象进行 pickle 时,我都会收到错误消息。 (类型错误:无法腌制 PyIDispatch 对象)
myrunningprocesses = runningprocesses()
temp = pickle.dumps(myrunningprocesses)
如有任何建议,我们将不胜感激。
Python 中的某些类型本质上是不可序列化的,进程肯定是其中之一。进程不会 运行 处于真空状态 - 它们具有许多属性,例如用户身份或身份、打开的文件等。你不能把所有这些都包装起来,然后根据需要重新构造它们。
你对pickle
的能力有点乐观。
我想序列化一个 class 对象,以便我可以通过串行连接将它发送到另一台设备。
对象看起来像这样:
class runningprocesses(object):
def __init__(self):
self.processes = WMI.InstanceOf('Win32_Process')
我正在尝试使用 pickle 将其序列化并将其存储到一个变量中,以便我可以将其发送出去,但是每当我尝试对该对象进行 pickle 时,我都会收到错误消息。 (类型错误:无法腌制 PyIDispatch 对象)
myrunningprocesses = runningprocesses()
temp = pickle.dumps(myrunningprocesses)
如有任何建议,我们将不胜感激。
Python 中的某些类型本质上是不可序列化的,进程肯定是其中之一。进程不会 运行 处于真空状态 - 它们具有许多属性,例如用户身份或身份、打开的文件等。你不能把所有这些都包装起来,然后根据需要重新构造它们。
你对pickle
的能力有点乐观。