Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

429
Views
C# conversión in situ de la matriz `int[]` a la matriz `byte[]`

Tengo una matriz de algún tipo ( short[] , int[] o un tipo base similar). Quiero enviarlo a través de una secuencia, así que necesito que sea byte[] . La solución estándar parece ser crear una nueva matriz byte[] y usar BitConverter . El problema con este enfoque es el rendimiento y el uso de la memoria: requiere asignar toda la memoria nueva, copiarla en la nueva memoria y luego escribir el byte[] en la transmisión.

Tengo muchas ganas de usar la memoria de respaldo original de la matriz int[] como una matriz byte[] para poder enviarla en el lugar. Estoy dispuesto a hacer cumplir el requisito de que el sistema de envío y recepción debe tener el mismo endianness, por el bien de esta diferencia de rendimiento muy obvia y muy significativa.

¿Hay alguna forma de tratar una matriz de int[] o similar, como un byte[] en el lugar?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Si puede usar Span<T> (.net core 3+):

 void Send(int[] data) { ReadOnlySpan<byte> byteRef = MemoryMarshal.AsBytes(data.AsSpan()); _stream.Write(byteRef); }
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!