C# Menyahsiri struct selepas menerimanya melalui TCP
Apabila cuba menghantar struct melalui TCP, pengguna mungkin menghadapi masalah dengan penyahserikatan. Khususnya, pengecualian "System.Runtime.InteropServices.SafeArrayTypeMismatchException" boleh berlaku apabila menjalankan klien dan pelayan pada mesin berasingan. Isu ini timbul disebabkan oleh pengendalian saiz dan pengepala paket yang tidak betul.
Awalan Panjang
Untuk menyelesaikan isu ini, Awalan panjang yang betul harus dilaksanakan. Ini melibatkan penambahan pengepala tetap pada setiap paket yang mengandungi panjang data yang dihantar. Format pengepala adalah seperti berikut:
[Length (4 bytes)][Header (1 byte)][Data (x byte(s))]
Membaca Paket
Untuk membaca paket, langkah berikut diambil:
Atas ialah kandungan terperinci Bagaimana untuk Mengelakkan `System.Runtime.InteropServices.SafeArrayTypeMismatchException` Apabila Menyahseri Struktur Melalui TCP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!