Brief feature description
See: #220
When a large data type that does not fit into the stack is transmitted via shared memory we encounter a stack overflow. It is caused by a lacking placement new functionality in Rust, see: rust-lang/rust#53827
Example:
let a = Box::new([-1; 3000000]);
We need to add a mechanism so that
let sample = publisher.loan()?;
and
let sample = publisher.loan_uninit()?;
let sample = sample.write_payload(LargeDataType::default());
perform a placement new into the provide shared memory.
Detailed information
One possible solution can be the introduction of a PlacementNew trait in combination with a placement_new derive macro.
Brief feature description
See: #220
When a large data type that does not fit into the stack is transmitted via shared memory we encounter a stack overflow. It is caused by a lacking placement new functionality in Rust, see: rust-lang/rust#53827
Example:
We need to add a mechanism so that
and
perform a placement new into the provide shared memory.
Detailed information
One possible solution can be the introduction of a
PlacementNewtrait in combination with aplacement_newderive macro.