最近用python来写一个读取共享内存的程序,发现每次程序退出后会自动把这个共享内存给删掉,而实际没有调用任何close或del的方法,查阅了下资料,发现了如下bug:
具体代码如下:
from multiprocessing import shared_memory,resource_tracker
shm_name = '/test_share'
shm = shared_memory.SharedMemory(name=shm_name,create=False)
resource_tracker.unregister(f'/{shm_name}', "shared_memory")
注:要在共享名称前还要加个符号/