WebSocket 서버에 연결하고 알 수없는 크기의 JSON 응답을받는 C# 응용 프로그램을 작성하고 있습니다. 이 목적으로 ClientWebSocket
클래스를 사용하고 있습니다.WebSocket 응답에 대한 버퍼 크기 선택
var client = new ClientWebSocket();
client.ConnectAsync(new Uri($"ws://localhost:{port}"), token).Wait();
var result = new ArraySegment<byte>(new byte[1000]);
client.ReceiveAsync(result, token).Wait();
문제는 내가 알고하지 않기 때문에, 얼마나 큰 json으로 :
클라이언트로부터 데이터를 수신 할 수있는 유일한 방법은 인수로 ArraySegment<byte>
걸리는 ReceiveAsync
방법으로 보인다 응답은, 그 ArraySegment를 뒷받침하는 버퍼를 얼마나 크게 만들지 모르겠다. 이 경우 1000 바이트를 너무 작게 지정했으며 응답이 잘립니다. 그러나 버퍼 크기를 임의로 (1,000,000 바이트?)로 설정하면 필요한 메모리보다 더 많은 메모리를 사용하게 될까봐 걱정됩니다.
응답 크기를 모른 채 버퍼 크기를 선택하려면 어떻게해야합니까?