def open_mem_map()

in azure_functions_worker/bindings/shared_memory_data_transfer/file_accessor_unix.py [0:0]


    def open_mem_map(
            self,
            mem_map_name: str,
            mem_map_size: int,
            access: int = mmap.ACCESS_READ) -> Optional[mmap.mmap]:
        """
        Note: mem_map_size = 0 means open the entire mmap.
        """
        if mem_map_name is None or mem_map_name == '':
            raise SharedMemoryException(
                f'Cannot open memory map. Invalid name {mem_map_name}')
        if mem_map_size < 0:
            raise SharedMemoryException(
                f'Cannot open memory map. Invalid size {mem_map_size}')
        fd = self._open_mem_map_file(mem_map_name)
        if fd is None:
            logger.warning('Cannot open file: %s', mem_map_name)
            return None
        mem_map = mmap.mmap(fd.fileno(), mem_map_size, access=access)
        return mem_map