def _prepare_queue(self):
        if self._queue is None:
            if self._use_manager:
                if self._manager is None:
                    self._manager = multip.Manager()
                self._queue = self._manager.Queue(maxsize=self._queue_maxsize)
            else:
                self._queue = multip.Queue(maxsize=self._queue_maxsize)

        self._logger.info('Starting the Storage Queue!')
        # Wrap a queue writer around the storage service
        queue_handler = QueueStorageServiceWriter(self._storage_service, self._queue,
                                                  self._gc_interval)

        # Start the queue process
        self._queue_process = multip.Process(name='QueueProcess', target=_wrap_handling,
                                             args=(dict(handler=queue_handler,
                                                        logging_manager=self._logging_manager,
                                                        graceful_exit=self._graceful_exit),))
        self._queue_process.start()

        # Replace the storage service of the trajectory by a sender.
        # The sender will put all data onto the queue.
        # The writer from above will receive the data from
        # the queue and hand it over to
        # the storage service
        self._queue_wrapper = QueueStorageServiceSender(self._queue)
        self._traj.v_storage_service = self._queue_wrapper
Wraps and abstracts content validation and JSON parsing
dataset/ETHPy150Open SmokinCaterpillar/pypet/pypet/environment.py/MultiprocContext._prepare_queue--crossover with--dataset/ETHPy150Open tumblr/pytumblr/pytumblr/request.py/TumblrRequest.json_parse