Skip to content

Latest commit

 

History

History
62 lines (53 loc) · 1.83 KB

README.md

File metadata and controls

62 lines (53 loc) · 1.83 KB

SMem

The SMem library is used to handle interprocess communication (IPC) platform independently in Python.

Usage

Note

You must provide a name for the shared memory instance.

The size of the shared memory defaults to 1024

The create flag on the shared memory instance defaults to false, so make sure you ensure that an instance of the shared memory exists!

Creating a shared memory instance:

from smem.smem import SMem

# Create the SMem instance with the "create" flag 
# enabled and a specified "size" of 1024
shared_memory = SMem("my_shared_memory", create=True, size=1024)

Attaching to a shared memory instance:

Useful for reading an existing shared memory instance.

from smem.smem import SMem

# Create the SMem instance with the "size" flag set to 1024
# (the same as when we created it)
shared_memory = SMem("my_shared_memory", size=1024)

Writing to shared memory

Writing to shared memory will overwrite the existing value.

# Assume "shared_memory" contains an active instance of SMem
data = b"This is my data to write!"
shared_memory.write(data)

Reading shared memory

# Assume "shared_memory" contains an active instance of SMem
data = shared_memory.read()

Closing an instance

Closing an instance that created the shared memory file:

# Assume "shared_memory" contains an active instance of SMem
# that created the shared memory file
shared_memory.close()
shared_memory.unlink()

Closing an instance that did not create the shared memory file:

# Assume "shared_memory" contains an active instance of SMem
# that did not create the shared memory file
shared_memory.close()