日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

打造史上最小尺寸.Net Core单文件应用程序

發布時間:2023/12/4 asp.net 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 打造史上最小尺寸.Net Core单文件应用程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

.Net Core支持將應用程序發布成單文件進行部署和分發。

以下示例將Windows應用作為獨立的單文件應用程序發布:

?dotnet?publish?-r?win-x64?-c?Release?/p:PublishSingleFile=true?/p:PublishTrimmed=true?/p:IncludeNativeLibrariesForSelfExtract=true

查看publish目錄,確實只有一個文件,但是尺寸比較大,這還僅僅是一個Hello World程序,就有將近21M。

有沒有辦法讓文件尺寸變得更小呢?

bflat

首先,下載最新版bflat(https://github.com/MichalStrehovsky/bflat/releases),并解壓到D:\bflat-0.0.1-win64\(任意目錄皆可)。

然后,在項目目錄下運行如下命令:

D:\bflat-0.0.1-win64\bflat.exe?build?Program.cs

編譯完成后,生成的文件Program.exe大小只有2.69M,差不多是原來的1/10了。

這還不是最神奇的,再試試加上參數后運行:

D:\bflat-0.0.1-win64\bflat.exe?build?--no-reflection?--no-stacktrace-data??--no-globalization?--no-exception-messages?Program.cs

文件大小只有734K!而且能夠正常運行。

這算不算史上最小尺寸.Net Core單文件應用程序?!

結論

bflat是結合Roslyn和NativeAOT的實驗性編譯器。因此,您可以使用高性能CoreCLR GC和本機代碼生成器 (RyuJIT) 訪問最新的C#功能。

就目前來說,bflat只能作為一個玩具。可以看到它只能編譯單個cs文件,如果我加入nuget包,則無法編譯。

但是,bflat現在還是0.0.1版本,想象一下,如果繼續發展下去,能夠打造真的微型應用程序的話,還是很有吸引力的。

如果你覺得這篇文章對你有所啟發,請關注我的個人公眾號”My IO“,記住我!

總結

以上是生活随笔為你收集整理的打造史上最小尺寸.Net Core单文件应用程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。