Closed cocosip closed 4 years ago
最近几天都在研究新版的SuperSocket的使用方法,以及尝试将原先所依赖的通讯库逐步转换到SuperSocket上。目前在文件传输这块还是有点疑惑。 之前使用DotNetty的时候,他内部提供了一个ChunkedStream 的类,用来对文件传输方面进行支持。我看了SuperSocket 的相关demo, 里面可以重写的接口的参数 主要是 ReadOnlySequence<byte>与 ReadOnlySequence<byte> 。这两个类貌似都是基于内存的操作。那是否意味着,如果我需要传输一个大文件的时候,该大文件会被加载到内存当中去? 这样不容易暴内存么?或者SuperSocket有其他的机制来保证数据的缓慢写入?
ReadOnlySequence<byte>
暂无这样的内置支持, 你自己实现也应该不难,自己实现PipelineFilter把接收到的数据写到磁盘。
最近几天都在研究新版的SuperSocket的使用方法,以及尝试将原先所依赖的通讯库逐步转换到SuperSocket上。目前在文件传输这块还是有点疑惑。 之前使用DotNetty的时候,他内部提供了一个ChunkedStream 的类,用来对文件传输方面进行支持。我看了SuperSocket 的相关demo, 里面可以重写的接口的参数 主要是
ReadOnlySequence<byte>
与ReadOnlySequence<byte>
。这两个类貌似都是基于内存的操作。那是否意味着,如果我需要传输一个大文件的时候,该大文件会被加载到内存当中去? 这样不容易暴内存么?或者SuperSocket有其他的机制来保证数据的缓慢写入?