Source code for bi_etl.components.get_next_key.shared_table_memory_manager

import multiprocessing

from bi_etl.components.get_next_key.shared_table_memory import SharedTableMemory


[docs]def main(): pass
if __name__ == '__main__': main()
[docs]class SharedTableMemoryManager(object):
[docs] def __init__(self, manager): self.table_dict = manager.dict()
[docs] def create_shared_table_memory(self, manager: multiprocessing.Manager, table_name: str, chunk_size: int): table_name = str(table_name) if table_name not in self.table_dict: self.table_dict[table_name] = SharedTableMemory(manager, chunk_size=chunk_size) return self.table_dict[table_name]
[docs] def get_shared_table_memory(self, table_name): return self.table_dict[table_name]