Unsafe.As와 Unsafe.ReadUnaligned가 제일 빠르다
Unsafe.As<byte, T>(ref buffer[0]);
Unsafe.ReadUnaligned<T>(ref buffer[0]);
로 쓰면 된다
하지만 크기를 측정해야 하거나 readonly일 경우는
MemoryMarshal.Read<T>(buffer);
가 제일 빠르다
BitConverter는 변환 방법중에 속도가 제일 느리다
Byte 열거를 구조체 열거로 변환해야 할 경우는
MemoryMarshal.Cast<byte, T>(buffer);
을 사용하는 것이 제일 빠르다
난 닷넷 직렬화 개좆같더라. 다른 언어랑 호환되게 하려면 진짜 좆같음. 프로토버퍼 이런걸 써야됨. 씨발 ㅠㅠ
ref랑 Span 도입하면서 직렬화 이제는 많이 간결해짐
ㄴ 진짜? 정말 쉬워? ㅠㅠ
예를 들면 바로 코드로 짜줌
ㄴ 갑자기 예를 들기도 어렵네. ref랑 span? 알아보겠음. ㄳㄳ