2020-03-11 09:09:56 +08:00
|
|
|
import cloudpickle
|
2020-09-12 15:39:01 +08:00
|
|
|
from typing import Any
|
2020-03-11 09:09:56 +08:00
|
|
|
|
|
|
|
|
|
|
|
class CloudpickleWrapper(object):
|
2020-09-11 07:55:37 +08:00
|
|
|
"""A cloudpickle wrapper used in SubprocVectorEnv."""
|
2020-04-04 21:02:06 +08:00
|
|
|
|
2020-09-12 15:39:01 +08:00
|
|
|
def __init__(self, data: Any) -> None:
|
2020-03-11 09:09:56 +08:00
|
|
|
self.data = data
|
2020-03-11 09:38:14 +08:00
|
|
|
|
2020-09-12 15:39:01 +08:00
|
|
|
def __getstate__(self) -> str:
|
2020-03-11 09:09:56 +08:00
|
|
|
return cloudpickle.dumps(self.data)
|
2020-03-11 09:38:14 +08:00
|
|
|
|
2020-09-12 15:39:01 +08:00
|
|
|
def __setstate__(self, data: str) -> None:
|
2020-03-11 09:09:56 +08:00
|
|
|
self.data = cloudpickle.loads(data)
|