This class can be used to store and retrieve information in shared memory. It can open a shared memory slot with a given key number and store a string value in the memory. The class can also retrieve the value previously stored in the memory, even if it was in a previous request by a different user. The allocated shared memory block size is restricted to a given limit in number of bytes. The class uses semaphores to prevent multiple requests storing and retrieving values from the memory at the same time.