c# - 什么时候用字节数组,什么时候用流?

标签 c# wcf service media

我需要将图像和小视频文件(大约 5MB,小于 10MB)发送到我将编写的 REST 服务。 我想知道我应该使用 Byte[] 还是 Stream 来完成这个任务。 使用 Byte[] 和 Stream 在传输文件大小方面的分界线是什么?

最佳答案

您愿意提交给事务的可用内存量是您唯一真正的约束。

如果你有一个 5M 的文件,那么你需要将整个文件加载到 RAM 中,这将花费 5M。

如果流式传输,您可以使用更少的内存,方法是从文件中读取小块到可重用缓冲区并将这些 block 写入 HTTP 流。

关于c# - 什么时候用字节数组,什么时候用流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8897656/

相关文章:

c# - 使用早期绑定(bind)从 CRM 检索第一条记录

c# - 文本框点击事件

.net - 如何在 BeforeSendRequest 中取消请求

wcf - 在 REST/WCF 服务中将数据集从 LINQ 返回到 SQL

c# - 从 Web API Controller 启动长时间运行的操作

c# - 如果登录不正确,如何使 C# WCF session 无效

c# - 使用内置应用程序编写具有 facebook 共享或推文的 WP7 应用程序

c# - 上下文切换死锁

android - 服务未收到 Intent/额外信息

Android 服务无限期运行