在 Linux 系统下,可以使用共享内存(Shared Memory)来实现进程间内存共享
下面是一个简单的示例,展示了如何在 Python 中使用共享内存:
posix_ipc
库:pip install posix_ipc
write_shm.py:
import os
import sys
import posix_ipc
# 创建共享内存
memory = posix_ipc.SharedMemory("/my_shared_memory", flags=os.O_CREAT, mode=0o600, size=1024)
# 写入数据到共享内存
data = "Hello from shared memory!"
memory.write(data.encode())
print("Written data to shared memory:", data)
read_shm.py:
import os
import sys
import posix_ipc
# 连接到共享内存
memory = posix_ipc.SharedMemory("/my_shared_memory")
# 从共享内存中读取数据
data = memory.read(1024).decode()
print("Read data from shared memory:", data)
# 删除共享内存
memory.close_fd()
posix_ipc.unlink_shared_memory("/my_shared_memory")
首先运行 write_shm.py
脚本,将数据写入共享内存:
python write_shm.py
然后运行 read_shm.py
脚本,从共享内存中读取数据:
python read_shm.py
这样就实现了两个进程之间通过共享内存进行数据交换。请注意,在实际应用中,您可能需要使用更复杂的同步机制(如信号量、互斥锁等)来确保数据的正确访问和同步。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。