Một chuỗi được nối tiếp phân cấp nhị phân 128 of đôi, chiếm 50 MB không gian. Đang tuần tự hóa mảng 128³ struct s với hai trường đôi chiếm 150 MB và hơn 20 giây để xử lý.Các lựa chọn thay thế nhị phân
Có các lựa chọn thay thế đơn giản nhanh nào có thể tạo ra các tệp nhỏ gọn không? Kỳ vọng của tôi là các ví dụ trên sẽ chiếm 16 và 32 MB, tương ứng và dưới hai giây để xử lý. Tôi đã xem xét protobuf-net, nhưng nó xuất hiện rằng nó thậm chí không hỗ trợ struct mảng.
PS: Tôi xin lỗi vì đã phạm sai lầm khi ghi kích thước tệp. Chi phí không gian thực tế với BinaryFormatter không lớn.
Manual serialization thực sự có thể rất nhanh chóng và nhỏ gọn, nhưng nó cũng là dễ bị lỗi và tốn thời gian để viết. Tôi mong đợi một số chi phí, nhưng với BinaryFormatter nó thường là không hợp lý. –
Bạn có thể làm cho nó thân thiện hơn một chút với generics và/hoặc giao diện. Nhưng bắt đầu thêm meta và bạn sẽ nhanh chóng tiếp cận chi phí của Formatters. –
Phát hiện trên Henk. BinaryFormatter sẽ làm việc với chỉ là về * bất cứ điều gì *. Bạn nên mong đợi hiệu suất tốt hơn từ một cái gì đó không chính xác những gì bạn cần và * chỉ * những gì bạn cần. –