在Visual Studio 2017中缓慢构建Xamarin

时间:2018-07-01 11:01:05

标签: xamarin visual-studio-2017 parallels

我最近在Visual Studio 2017中开发了一个基于xamarin的应用程序,我不确定在构建和调试时看到的性能是否可以预期或出现问题。

环境:imac将于2015年末推出,四核i5 @ 3.5GHz,24GB RAM。 我正在Windows 10中的并行13下执行Visual Studio(最新),并已将所有四个内核和20GB RAM分配给VM(不过,如果分配的较少,这没有什么区别。)

该解决方案是一个基于xamarin的标准解决方案,包含3个项目和大约10个类(大约300loc)(是的,实际上几乎没有任何东西)。 重建大约需要1分钟。在调试模式下启动应用程序大约需要30秒钟才能显示模拟器。 查看代码大小和硬件规格,我期望构建和仿真只需几秒钟的时间。 我错了吗?即使考虑虚拟机,我也不会期望这些数字。 有人可以分享经验/想法吗?

1 个答案:

答案 0 :(得分:2)

您的问题不只是编译时间。每次构建项目时,共享代码都会被编译为dll,代码依赖关系将被检查,然后链接到本机项目中,本机项目正在被编译,资源被打包,完整性检查和签名并最终被捆绑(不说)包括nuget软件包和其他插件),然后将整个软件包打包到应用档案中,这也需要时间来编写。

您的应用也可以通过USB或网络(默认为USB)传输到设备。

考虑“幕后”发生的事情,30秒非常快。

但是,我发现性能不是基于cpu和ram的(至少如果您的dev机器上有相当数量的两者),而是基于硬盘的性能。

如果您真的想加快速度,则可以考虑运行Visual Studio并在nvme驱动器上进行编译(替代方法可能是SSD袭击)。

例如,我曾经有一个xamarin应用程序,该应用程序对各种nuget软件包有很多依赖性。在Mac Mini(2011年型号,通过售后三星850 Pro进行了改进)上,编译iOS版本花费了大约25分钟(完全重建),切换到在配备有三星950 Pro nvme驱动器的骷髅峡谷NUC上运行的VM解决方案的确加快了速度整个过程耗时2.5分钟。