Skip to main content

SharedMemory

Project description

SharedMemory

Python shared memory library based an posix-ipc.

Features

  • Shared type:
    • Basic type (int, float, bool, str)
    • list, tuple, dict and nparray
  • Management of the availability of shared memory space
  • Overloaded methods for list and dict (basic)
  • Methods to manage all defined shared space
  • Space Memory configurable
  • Semaphore

Installation

$> pip install SharedMemory

Example

Example of execution in two instances of ipython.

Client side

In [1]: from SharedMemory import SharedMemory

In [2]: # Creating client instance with a shared space named 'shared_space' with a size of 10
   ...: C = SharedMemory(name="shared_space", value="Hello", client=True)

In [4]: C.getAvailability()
Out[4]: True

In [5]: C.getValue()
Out[5]: 'Hello'

In [6]: # Waiting for Server to update shared data

In [7]: C.getValue()
Out[7]: 'World'

In [8]: C.setValue('HW')
Out[8]: True

In [9]: C.getValue()
Out[9]: 'HW'

In [10]: # Closing the client side
    ...: C.close()

In [11]: C.getAvailability()
Out[11]: False

Server side

In [1]: from SharedMemory import SharedMemory

In [2]: # Creating server instance access to the shared named 'shared_space'
   ...: S = SharedMemory(name="shared_space", client=False)

In [4]: S.getAvailability()
Out[4]: True

In [5]: S.getValue()
Out[5]: 'Hello'

In [6]: S.setValue("World")
Out[6]: True

In [7]: S.getValue()
Out[7]: 'Hello'

In [8]: # Waiting for Client to update shared data

In [9]: S.getValue()
Out[9]: 'HW'

In [10]: # Waiting Client to close the shared space

In [11]: S.getAvailability()
Out[11]: False


In [12]: # Closing the server side
    ...: S.close()
INFO: Client already stopped.

More

PyPI version Python package Upload Python Package Python License: GPL v3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sharedmemory-1.5.0.tar.gz (23.0 kB view details)

Uploaded Source

Built Distribution

SharedMemory-1.5.0-py3-none-any.whl (22.5 kB view details)

Uploaded Python 3

File details

Details for the file sharedmemory-1.5.0.tar.gz.

File metadata

  • Download URL: sharedmemory-1.5.0.tar.gz
  • Upload date:
  • Size: 23.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for sharedmemory-1.5.0.tar.gz
Algorithm Hash digest
SHA256 f43aaab31ae9438bedc3e02207bf7ef80f384f18cf2a92d411bc3d8db52e3200
MD5 19aa1eb16f8b5c7e947e73d299e9ceae
BLAKE2b-256 dbce9b214b705d0c1366e99fbbf24517b47b4d2b7beeb725159ef07d2f57054c

See more details on using hashes here.

File details

Details for the file SharedMemory-1.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for SharedMemory-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8a6a062ed2f00e94813b4ce9e83060d5b033ff6ceff1a63d213303448ed1ec0f
MD5 9b69fda19d81c8b85850039cecbd6fdf
BLAKE2b-256 ce80feb9321a14a4292ea3130f6f0da4532526b5a362b10bd31fc1732a4fe586

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page