Ist es mit flatbuffers
in C# möglich, Objekte in nativen (nicht verwalteten) Puffer zu serialisieren? Deshalb möchte ich diese Schritte tun:Serialize in nativen Speicherpuffer von C# mit Flatbuffers
- Vergeben Sie einen nativen Speicherpuffer aus nativen Speicher
- Objekte in C# erstellen und sie in den Puffer zugeordnet serialisiert
- Senden Sie dieses Speicherpuffer zu C++ für die Deserialisierung
Ich denke entweder über einen benutzerdefinierten Speicherpufferzuordner in C# oder über eine Möglichkeit, den Besitz eines Speicherpuffers von C# auf C++ zu übertragen.
Im Allgemeinen möchte ich Speicher beim Kopieren von Daten von C# nach C++ kopieren und umgekehrt. Ich möchte diesen Speicherpuffer zwischen C# und C++ teilen.
Wie mache ich das?
Kann jemand Downvotes erklären und Stimmen schließen? – Max
können Sie C# Speicher anheften und seine Adresse an eine C-Funktion übergeben https://stackoverflow.com/questions/5143349/c-sharp-how-can-i-pin-an-object-in-memory-witound-marshalling- the-object und hier https://manski.net/2012/06/pinvoke-tutorial-pinning-part-4/ – pm100