当移动我的.NET Framework精简应用到Windows CE设备的SD卡,程序执行慢然后从内部存储器运行它。

我以为,初创可能比较慢,但是它是整个程序。没有IO到存储卡中。

为什么我的应用程序很慢,如何做紧凑架构手柄和加载组件?

有帮助吗?

解决方案

它有按需寻呼做。您的应用程序不能直接从SD卡上运行,如SD是不可执行的媒体因此它被拉到到RAM中运行。 Windows CE的通常不有一大堆的RAM,所以加载程序不会你的整个应用程序拉到RAM中运行。当然,你的堆和栈将在RAM中,但根据需要在大会本身的实际IL代码被分页英寸它也调出时,系统决定它不再需要一个特定的页面。

本页面可能会对性能产生影响,虽然我有点惊讶,这是一个很大的影响,除非应用程序本身是真正的大(例如,如果你有很多嵌入式的资源,它的拉出组件)。

其他提示

我同意ctacke之前的“需求分页”的答案。

:一种解决方案您可以尝试是从SD卡执行装载程序复制了你的实际可执行文件,并从卡到硬盘的DLL,然后从加载执行程序。在后续的执行装载机可以检测硬盘的版本是最新的,如果是的话只需要直接启动它。如果硬盘的版本是不是最新的,装载机将再次出过期的文件从卡复制,然后执行实际的程序。

我已经从远程网络位置加载的程序之前完成这一点,和它的工作得很好。

如果应用程序是SD卡上的一些设备将你的程序崩溃。它发生而挂起上电设备。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top