def __dask_distributed_pack__(self, client): from distributed.protocol.serialize import to_serialize return { "name": self.name, "column": self.column, "npartitions": self.npartitions, "npartitions_input": self.npartitions_input, "ignore_index": self.ignore_index, "name_input": self.name_input, "meta_input": to_serialize(self.meta_input), "parts_out": list(self.parts_out), }
def _put(self, msg): if not self._started: self._buffer.append(msg) return data = { "op": "pubsub-msg", "name": self.name, "msg": to_serialize(msg) } if self.worker: for sub in self.subscribers: self.worker.send_to_worker(sub, data) if self.worker.extensions["pubsub"].publish_to_scheduler[ self.name]: self.worker.batched_stream.send(data) elif self.client: self.client.scheduler_comm.send(data)