2012-10-03 44 views
4

根据Introduction to Background Tasks的第20页,在下的网络资源限制,后台任务可以每15分钟下载4.69 MB。Windows RT中的网络资源限制

这是否意味着,在Windows RT中,如果我们通过IE10 metro在后台下载20MB文件,则需要40多分钟? (否则我们必须保持前面的下载进度)

此外,作为后台应用程序,您不允许使用超过0.002%的CPU。

在同一页上,他们认为它像:

网络使用可以代表一个设备电池显著排放,因此它是在后台执行任务也制约。但是,如果设备使用交流电源运行,则后台任务不受网络限制。他们可以根据自己的需要随意使用尽可能多的网络带宽(当然,通过运营商特定的带宽或使用限制进行门控)。请注意,即使设备使用交流电源运行,后台任务的CPU使用率也始终受到资源限制。

由于这些原因,我们无法实现Windows RT下载管理器? 用户同意?

回答

1

系统提供卸载下载以供后台管理的API: see Mike Taulty's blog entry on this。 WinRT应用程序在后台模式中还存在其他严重的限制,通常不会在博客文章和论坛中讨论,例如后台任务在单独的进程或线程单元中运行而不是您的应用程序:在白皮书linked to above中,请参阅后台任务主机可执行文件。它说,除非您的后台任务是PushNotificationTrigger或ControlChannelTrigger,否则您的任务是由BackgroundTaskHost.exe或WWAHost.exe运行的inproc服务器。即使在“同一个应用程序”中运行的前两种情况下,它也是在一个单独的公寓中。这些全部只能通过将其封送到文件或ApplicationData存储中来与主应用程序共享数据。

我已经试验了ControlChannelTrigger,发现以下限制(在该文档中还列出了如果你挖掘出来):

  • 通道必须与插座相关连接套接字之前
  • 的应用程序只能使用有限数量的ControlChannel,即使指定了软件通道(在我的情况下为6)
1

据我所知,链接的文档仅限于后台任务中的数据吞吐量,该数据吞吐量基于用于为网络设备供电的能量数量,而不是由任何特定的数据值。 4.69MB只是10Mbps的一个例子,比大多数标准的住宅互联网连接要慢。

同样作为段落你链接状态有没有限制,如果设备连接到主电源,所以台式电脑和大多数笔记本电脑将永远不会有问题。没有迹象表明您可以要求用户绕过这些限制。

所以是的,你可以建立一个下载管理器,只要你知道用户在哪里以及如何使用应用程序并进行相应调整,它应该可以正常工作。

+0

感谢您的深刻反应。我观察了运行Windows 8 pro RTM的桌面上的所述行为。我收到了一些商店应用程序的更新,我打开了商店,按下安装更新按钮并切换到桌面。过了一段时间,当我切换回商店时,应用程序未被下载。我在同一屏幕上呆了一段时间,并在一分钟内下载/安装更新。是因为当我切换上下文时,应用程序被暂停了吗?显然,网络限制不允许已暂停的应用程序消耗带宽。或者是商店应用程序设计的方式? – Annie