asp.net网站第一次运行慢,网页内容修改器,建设银行贵阳市网站电话,网站建设总结材料因为所有的主流网页浏览器都支持WebAssembly#xff0c;开发者们现在可以寻找一个新的平台来部署他们的应用程序。由WebAssembly团队提供的标准工具链仅能将C、C编译成为WebAssembly#xff0c;然而这对使用其他编程语言的开发者们并没有什么帮助。C#开发者就幸运的多了… 因为所有的主流网页浏览器都支持WebAssembly开发者们现在可以寻找一个新的平台来部署他们的应用程序。由WebAssembly团队提供的标准工具链仅能将C、C编译成为WebAssembly然而这对使用其他编程语言的开发者们并没有什么帮助。C#开发者就幸运的多了Mono项目提供了两种不同的方法来对WebAssembly进行支持。第一种方法是通过使用Mono IL解释器在运行时runtime运行托管代码例如C#。这种方法的目标是支持快速原型化和快速开发。当应用程序已经准备交付给客户时最好使用第二种方法。该方法使用静态编译生成一个WASM文件该文件能够被支持WebAssembly的浏览器于本地进行执行。为了能够创建这些WASM文件Mono项目中引入了一个叫做mono-wasm的新工具。它将C#语言作为输入并且生成LLVM二进制代码将其用于LLVM WebAssembly的后端。由mono-wasm生成的目标WASM文件包含C#程序执行所需的所有依赖包括mscorlib.dll、C库文件以及Mono运行时文件。由于LLVM链接器于近日增加了对WebAssembly的支持因此mono-wasm支持增量式编译。这种方式能够大大减少编译时间当你进行开发时对于那些没有改变的代码例如mscorlib.dll、Mono运行时文件等等不需要进行重新编译。虽然该项目已经完成了非常多的工作但是其首席开发人员Laurent Sansonetti指出该项目依然处于测试前版本pre-alpha。在最近的短期开发阶段中该项目主要的目标是修复垃圾回收机制以及准备推出正式的alpha测试版本。该项目长期开发阶段的目标将着眼于减少WASM可执行文件的大小一个hello world示例程序的大小是10MB以及对Mono编译器进行更新使其能够直接编译成为WASM32另外就是改进与C#、JavaScript之间的交互性。该项目当前处于非常活跃的开发状态好奇的开发者们以及想要为该项目贡献代码的人们可以在GitHub上找到当前该项目的代码。原文地址:http://www.infoq.com/cn/news/2018/02/mono-cs-webassembly.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com