coreclr

【翻译】.NET 5中的性能改进

老子叫甜甜 提交于 2020-08-11 02:57:45
【翻译】.NET 5中的性能改进 在.NET Core之前的版本中,其实已经在博客中介绍了在该版本中发现的重大性能改进。 从.NET Core 2.0到.NET Core 2.1到.NET Core 3.0的每一篇文章,发现 谈论越来越多的东西。 然而有趣的是,每次都想知道下一次是否有足够的意义的改进以保证再发表一篇文章。 .NET 5已经实现了许多性能改进,尽管直到今年秋天才计划发布最终版本,并且到那时很有可能会有更多的改进,但是还要强调一下,现在已提供的改进。 在这篇文章中,重点介绍约250个PR,这些请求为整个.NET 5的性能提升做出了巨大贡献。 安装 Benchmark.NET现在是衡量.NET代码性能的规范工具,可轻松分析代码段的吞吐量和分配。 因此,本文中大部分示例都是使用使用该工具编写的微基准来衡量的。首先创建了一个目录,然后使用dotnet工具对其进行了扩展: mkdir Benchmarks cd Benchmarks dotnet new console 生成的Benchmarks.csproj的内容扩展为如下所示: <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <AllowUnsafeBlocks>true</AllowUnsafeBlocks>

龙芯开源社区上线.NET主页

ε祈祈猫儿з 提交于 2020-08-11 01:45:48
龙芯团队从2019年7 月份开始着手.NET Core的MIPS64支持研发,经过将近一年的研发,在2020年6月18日完成了里程碑性的工作,在github CoreCLR 仓库: https://github.com/gsvm/coreclr , 随后受到.NET社区的很大参与热情鼓舞之下,2020年7月7日,龙芯团队在github发布了 corefx: https://github.com/gsvm/corefx 、core-setup : https://github.com/gsvm/core-setup 。 2020年7月9日,龙芯团队发布了 dotnet 运行时、aspnet core 运行时与 sdk 的 EA 版本,见 loongson-dotnet/releases 。同时在龙芯开源社区上线了.NET主页: http://www.loongnix.org/index.php/Dotnet 。据主页上的介绍龙芯版本 .NET 平台正在开发阶段,该平台基于 .NET Core ,初始版本为3.0,后续会升级至3.1。欢迎贡献 相关文章: 龙芯团队完成CoreCLR MIPS64移植,已在github开源 dotnet core 在 MIPS64 下的移值进度:EA 版本已经发布 来源: oschina 链接: https://my.oschina.net/u

介绍一个基于 .NET 的船新 PHP SDK + Runtime: PeachPie

强颜欢笑 提交于 2020-08-10 08:15:11
前言 这几天想基于 .NET Core 搞一个自己的博客网站,于是在网上搜刮各种博客引擎,找到了这些候选:Blogifier、Miniblog 以及 edi 写的 Moonglate。 Blogifier:这是前端是个 Angular SPA 应用,不利于 SEO,同时首屏加载速度慢,因此排除。 Miniblog:顾名思义 Mini,可以完美承载内容但是主题实在是过于简单,没有可自定义性,因此排除。 Moonglate:总体感觉不错,界面设计得也很好,功能全面,然而需要 SQL Server 作为数据库,然而 SQL Server 虽然有 Linux 版本,但受限于主机配置和预算因此也被排除。 难道就没有适合我需求的博客引擎了吗?答案当然是:有。 众所周知 PHP 是世界上最好的语言(滑稽),还是众所周知有一个叫做 WordPress 的博客引擎生态非常庞大,而且是使用 PHP 构建的。 可是 PHP 和 .NET 又有什么关系呢? PeachPie PeachPie 是一个完全构建于 .NET Standard 之上的一套完整的 PHP SDK + Runtime,包含编译器和运行时等等,兼容 PHP 5.4-7.4(当然部分功能仍在开发中)。 官网: https://www.peachpie.io 那么 PeachPie 有什么优点呢: 开源: https://github

【翻译】.NET 5中的性能改进

纵然是瞬间 提交于 2020-08-09 09:55:23
【翻译】.NET 5中的性能改进 在.NET Core之前的版本中,其实已经在博客中介绍了在该版本中发现的重大性能改进。 从.NET Core 2.0到.NET Core 2.1到.NET Core 3.0的每一篇文章,发现 谈论越来越多的东西。 然而有趣的是,每次都想知道下一次是否有足够的意义的改进以保证再发表一篇文章。 .NET 5已经实现了许多性能改进,尽管直到今年秋天才计划发布最终版本,并且到那时很有可能会有更多的改进,但是还要强调一下,现在已提供的改进。 在这篇文章中,重点介绍约250个PR,这些请求为整个.NET 5的性能提升做出了巨大贡献。 安装 Benchmark.NET现在是衡量.NET代码性能的规范工具,可轻松分析代码段的吞吐量和分配。 因此,本文中大部分示例都是使用使用该工具编写的微基准来衡量的。首先创建了一个目录,然后使用dotnet工具对其进行了扩展: mkdir Benchmarks cd Benchmarks dotnet new console 生成的Benchmarks.csproj的内容扩展为如下所示: <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <AllowUnsafeBlocks>true</AllowUnsafeBlocks>

龙芯开源社区上线.NET主页

不想你离开。 提交于 2020-08-05 19:43:15
龙芯团队从2019年7 月份开始着手.NET Core的MIPS64支持研发,经过将近一年的研发,在2020年6月18日完成了里程碑性的工作,在github CoreCLR 仓库: https://github.com/gsvm/coreclr , 随后受到.NET社区的很大参与热情鼓舞之下,2020年7月7日,龙芯团队在github发布了 corefx: https://github.com/gsvm/corefx 、core-setup : https://github.com/gsvm/core-setup 。 2020年7月9日,龙芯团队发布了 dotnet 运行时、aspnet core 运行时与 sdk 的 EA 版本,见 loongson-dotnet/releases 。同时在龙芯开源社区上线了.NET主页: http://www.loongnix.org/index.php/Dotnet 。据主页上的介绍龙芯版本 .NET 平台正在开发阶段,该平台基于 .NET Core ,初始版本为3.0,后续会升级至3.1。欢迎贡献 相关文章: 龙芯团队完成CoreCLR MIPS64移植,已在github开源 dotnet core 在 MIPS64 下的移值进度:EA 版本已经发布 来源: oschina 链接: https://my.oschina.net/u

.NET Core 对龙芯的支持情况和对 .NET Core 开发嵌入式的思考

谁都会走 提交于 2020-07-28 08:33:15
.NET Core 对龙芯的支持情况和对 .NET Core 开发嵌入式的思考 目录 .NET Core 对龙芯的支持情况和对 .NET Core 开发嵌入式的思考 一,遗憾的尝试 二,.NET Core在嵌入式下的几点不足 1,不支持前几年的CPU 2,测试的硬件设备较少 3,支持兼容的系统版本较少 4,体积依然太大 5,依赖库比较伤脑筋 三,.NET Core 龙芯移植的进展和资料 一,遗憾的尝试 前些天看到了张队公众推送的《 Asp.Net终于可以在龙芯服务器上运行啦:Jexus成功完成对国产系列CPU的适配 》,联想到上一周与朋友在龙芯捣鼓 .NET Core,就想写一下关于 .NET Core 在龙芯下的资料。 Jexus Web Server 能够在龙芯服务器上跑,但是 ASP.NET 呢?.NET Core 呢?安装什么版本的 Mono ?Jexus 作者的文章表达有点模糊呀~ 上一周与朋友在龙芯上面为了部署 .NET 项目,颇费心机。朋友公司中标政府项目,开发好 .NET Core 做的项目后,才发现要部署的服务器是龙芯的,.NET Core 无法在上面运行。 服务器有什么有 Mono 4.x,可以创建简单的 Proparm.cs ,编译出程序,使用 mono xx.exe 运行,可是把项目放进去编译不出来~想编译安装 Mono 6.x 也不行,中间有些过程报错。

C# 9.0 终于来了, Top-level programs 和 Partial Methods 两大新特性探究

荒凉一梦 提交于 2020-07-27 22:29:13
一:背景 1. 讲故事 .NET 5 终于在 6月25日 发布了第六个预览版,随之而来的是更多的新特性加入到了 C# 9 Preview 中,这个系列也可以继续往下写了,废话不多说,今天来看一下 Top-level programs 和 Extending Partial Methods 两大新特性。 2. 安装必备 下载最新的 .net 5 preview 6 。 下载最新的 Visual Studio 2019 version 16.7 Preview 3.1 二:新特性研究 1. Top-level programs 如果大家玩过 python,应该知道在 xxx.py 中写一句 print,这程序就能跑起来了,简单高效又粗暴,很开心的是这特性被带到了C# 9.0 中。 修改前 using System; namespace ConsoleApp2 { class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); } } 修改后 System.Console.WriteLine("Hello World!"); 这就有意思了,Main入口函数去哪了? 没它的话,JIT还怎么编译代码呢? 想知道答案的话用 ILSpy 反编译看一下就好啦! .class private

【翻译】.NET 5中的性能改进

白昼怎懂夜的黑 提交于 2020-07-27 08:57:43
【翻译】.NET 5中的性能改进 在.NET Core之前的版本中,其实已经在博客中介绍了在该版本中发现的重大性能改进。 从.NET Core 2.0到.NET Core 2.1到.NET Core 3.0的每一篇文章,发现 谈论越来越多的东西。 然而有趣的是,每次都想知道下一次是否有足够的意义的改进以保证再发表一篇文章。 .NET 5已经实现了许多性能改进,尽管直到今年秋天才计划发布最终版本,并且到那时很有可能会有更多的改进,但是还要强调一下,现在已提供的改进。 在这篇文章中,重点介绍约250个PR,这些请求为整个.NET 5的性能提升做出了巨大贡献。 安装 Benchmark.NET现在是衡量.NET代码性能的规范工具,可轻松分析代码段的吞吐量和分配。 因此,本文中大部分示例都是使用使用该工具编写的微基准来衡量的。首先创建了一个目录,然后使用dotnet工具对其进行了扩展: mkdir Benchmarks cd Benchmarks dotnet new console 生成的Benchmarks.csproj的内容扩展为如下所示: <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <AllowUnsafeBlocks>true</AllowUnsafeBlocks>

asp.net core与.net core

会有一股神秘感。 提交于 2020-07-24 14:32:26
基于.net core的应用程序能够运行在不同的操作系统平台。Asp.net core是基于.net core平台的Web开发框架。 .NET Core简介 CoreCLR 基类库 Roslyn编译器 .NET Cire CLI工具 Asp.net core具有以下有点: 跨平台 统一Web UI与Web API开发 基于环境配置以及云就绪配置 内置依赖注入 轻型的高性能模块化HTTP请求管道 能够在IIS、Nginx、Apache和Docker上进行托管或者在当前进程内自托管 基于 .net core的框架 简化新式Web开发工具,命令行或者Visual Studio Code、Visual Studio 在Visual Studio Code上的开发插件:vscode-solution-explorer、c#、vscode-icon、NuGet Package Manager、C# XML Documentation Comments, vscode-drawio(做图插件) 创建一个web应用,命名为demo 然后点击运行项目 在浏览器里面输入http://localhost:5000 来源: oschina 链接: https://my.oschina.net/it110/blog/4326341

vscode下使用chrome浏览器调试js

强颜欢笑 提交于 2020-05-06 03:49:31
因为之前写代码一直使用vitual studio开发,所以在调试javascript的时候也一直使用vitual studio进行调试,不得不说,vitual studio调试javascript确实很方便,之前一直不理解为什么网上说的其他调试js的工具中没有提到vitual studio。 后来慢慢想明白了,vitual studio太笨重了。最近在学习使用vscode,也把学习的心得记录下来,加深理解,刚开始学习,很多理解错误的地方,大家多多指正。 step1: 打开vscode,添加js和html文件,并将其保存到你指定的工作目录下。 step2: 按下 ctrl+shift+x 打开左侧的扩展,也可以手动点击打开,安装debugger for chrome,如下图: step3: 安装完成之后,点击 ctrl+shift+p, 输入>task, 选择 配置任务 之后选择 “使用模板创建task.json” 再之后选择:others 操作完成之后,工作目录下出现了.vscode这个文件夹。此时文件夹下只有一个task.json文件,其实我也不知道这个task.json是干什么用的。 接下来我们点击左侧的调试,发现还是没有配置: 这是因为我们的.vscode下还缺少launch.json这个文件,此文件中有各种调试的配置 这个launch.json其实在安装了debugger