I imagine it would also be an interesting way to recover/continue on from a panic/segfault
As far as I can tell you should only use it for "splatted" data, maybe allowing gaps.
E.g. using it to not needing to load again some kind of multiple 1GiB bit mask which are just a 1GiB blob of bits each would probably work grate. Using it on structs which do not contain any pointer (i.e. no Strings, no Vecs, no &str etc.) would work okay. But the moment any pointers are stored in data carried over that way things become a huge mess and are basically fundamentally unsafe as they can easily become unsound.
</sarc>