public static @Unretained Object deserializeOffHeap(StoredObject bytes) {
    if (bytes == null) {
      return null;
    }
    try {
      return BlobHelper.deserializeOffHeapBlob(bytes);
    } catch (IOException e) {
      throw new SerializationException(
          "An IOException was thrown while deserializing",
          e);
    } catch (ClassNotFoundException e) {
      // fix for bug 43602
      throw new SerializationException(
          "A ClassNotFoundException was thrown while trying to deserialize cached value.",
          e);
    }
  }
If a PdxInstance is returned then it will have an unretained reference to the StoredObject's
off-heap address.
geode-core/src/main/java/org/apache/geode/internal/cache/EntryEventImpl.java