Closed ahuang11 closed 1 month ago
Can be simplified to:
import holoviews as hv
from dask.distributed.protocol import serialize, deserialize
curve = hv.Curve([0, 1, 2], kdims=["X-AXIS"])
print(type(curve))
print(curve.kdims, "BEFORE")
curve = deserialize(*serialize(curve))
print(curve.kdims, "AFTER")
And not specific to dask:
import holoviews as hv
import concurrent.futures
hv.extension("bokeh")
def test_save(hv_obj):
print(hv_obj.kdims)
print(hv_obj.kdims)
hv.save(hv_obj, "test.html")
if __name__ == "__main__":
curve = hv.Curve([0, 1, 2], kdims=["Yaxis"])
with concurrent.futures.ProcessPoolExecutor() as executor:
future = executor.submit(test_save, curve)
result = future.result()
Or even simplest:
import pickle
import holoviews as hv
hv.extension("bokeh")
curve = hv.Curve([0, 1, 2], kdims=["XAXIS"])
pickle.loads(pickle.dumps(curve))
This works:
This results in an error: