欧美xxxx做受欧美_www.xxxx精品_国产一区二区三区蝌蚪_国产原创欧美精品_国产福利精品一区_亚洲精品久久久久久下一站 _久久精品国产网站_久久99精品国产_久久综合给合久久狠狠狠97色69_91久久久久久久久久久

兩種語言“爭霸賽”,PHP速度領(lǐng)先C#

來源:CSDN博客 | 2022-03-22 17:21:42 |

譯者 | 張潔

責(zé)編 | 屠敏

有人的地方就有江湖,有江湖的地方就有紛爭。提起編程語言話題,總會(huì)有人想要不甘示弱地爭論一番。這不,就在一位名為@withinboredom的開發(fā)者發(fā)布的一條“我最喜歡的語言已由C#更改為PHP”的帖子下面,就有人表示了不服。

@withinboredom在帖子中是這樣描述的:“當(dāng)你對PHP和C#這兩種語言進(jìn)行實(shí)際的基準(zhǔn)測試時(shí),會(huì)在一些實(shí)例中發(fā)現(xiàn)PHP的性能優(yōu)于C#。”

而用戶@No McNoington卻反駁道:“你有本事就展示代碼示例,這樣我就可以證明為什么你是錯(cuò)的。”

@withinboredom回懟到:“這個(gè)人(@No McNoington)連個(gè)像樣的筆名都懶得起,那就準(zhǔn)備好被轟走吧!”

PHP和C#在讀取文件方面的較量

@withinboredom首先展示的,是他認(rèn)為“對每種語言都相當(dāng)公平”的讀取文件代碼:PHP和C#將同步、逐字節(jié)地讀取一個(gè)4Mib大小的文件。讓我們看看PHP和C#在讀取文件方面的較量吧!

PHP :

function test(){ $file = fopen("/file/file.bin", "r"); $counter = 0; $timer = microtime(true); while ( ! feof($file)) { $buffer = fgets($file, 4096); $counter += substr_count($buffer, "1"); } $timer = microtime(true) - $timer; fclose($file); printf("counted %s 1s in %s milliseconds\n", number_format($counter), number_format($timer * 1000, 4));} test();

C#:

using System.Diagnostics;using System.Text;var test = () => { using var file = File.OpenText("/file/file.bin"); var counter = 0; var sw = Stopwatch.StartNew(); while(!file.EndOfStream) { if(file.Read() == "1") { counter++; } } sw.Stop(); Console.WriteLine($"Counted {counter:N0} 1s in {sw.Elapsed.TotalMilliseconds:N4} milliseconds");}; test();

“讀取文件幾乎不包含用戶級代碼,只是單純測試一種語言的基本功能。”@withinboredom還補(bǔ)充道,代碼中添加計(jì)數(shù)只是為了防止PHP或C#中的編譯器擅自優(yōu)化或刪除代碼,并無其他作用。

然而,有些開發(fā)者對這個(gè)測試反駁道:“PHP并沒有一個(gè)字節(jié)一個(gè)字節(jié)地讀取文件啊(PHP中的fgets()函數(shù)用于從文件中讀取一行)!”@withinboredom火速回懟:“可C#也不是逐個(gè)字節(jié)讀取的!理論上讀取方式是一樣的。”

以下是兩種語言在讀取4Mib文件下的對比結(jié)果:

PHP:32.49毫秒(平均超過10次運(yùn)行)

C#:37.30毫秒(平均超過10次運(yùn)行)

4Mib大概只是一張完整照片的大小,所以為了進(jìn)一步證明PHP的優(yōu)越,@withinboredom還測試了這兩種語言讀取2.5g視頻大小的文件速度:

PHP:24.82秒(平均超過10次運(yùn)行)

C#:26.67秒(平均超過10次運(yùn)行)

綜上可以得出,不論是4Mib還是2.5g文件,PHP在讀取文件速度方面都優(yōu)于C#。

函數(shù)調(diào)用開銷是“罪魁禍?zhǔn)住保?/h2>

很多開發(fā)者認(rèn)為這是由于C#沒有以二進(jìn)制模式讀取文件,其中函數(shù)調(diào)用開銷是罪魁禍?zhǔn)住H欢珸withinboredom表示,在函數(shù)調(diào)用方面, C#比PHP快很多個(gè)數(shù)量級,所以問題不在于此。以下是2.5gb文件中二進(jìn)制模式的代碼:

using System.Diagnostics;using System.Text; var binTest = () =>{ using var file = File.OpenRead("/file/file.bin"); var counter = 0; var buffer = new byte[4096]; var numRead = 0; var sw = Stopwatch.StartNew(); while ((numRead = file.Read(buffer, 0, buffer.Length)) != 0) { counter += buffer.Take(numRead).Count((x) => x == "1"); } sw.Stop(); Console.WriteLine($"Counted {counter:N} 1s in {sw.Elapsed.TotalMilliseconds} milliseconds");}; binTest();

考慮到有人認(rèn)為會(huì)是Linq(語言集成查詢)的問題,@withinboredom刪除了.Take和重復(fù)計(jì)數(shù)的相關(guān)代碼:

有.Take:38.40s(2.5gb文件)

沒有.Take:23.5s(2.5gb文件——錯(cuò)誤的實(shí)現(xiàn))

關(guān)于查看文件性能的測試

因?yàn)橐恍╅_發(fā)者想優(yōu)化C#而不優(yōu)化PHP,所以@withinboredom設(shè)計(jì)了下面只查看文件性能的測試,供開發(fā)者參考。

PHP:

function test(){ $file = fopen("/file/file.bin", "r"); $counter = 0; $timer = microtime(true); while (stream_get_line($file, 4096) !== false) { ++$counter; } $timer = microtime(true) - $timer; fclose($file); printf("counted %s 1s in %s milliseconds\n", number_format($counter), number_format($timer * 1000, 4));}test();

C#:

var binTest = () =>{ using var file = File.OpenRead("/file/file.bin"); var counter = 0; var buffer = new byte[4096]; var sw = Stopwatch.StartNew(); while (file.Read(buffer, 0, buffer.Length) != 0) { counter += 1; } sw.Stop(); Console.WriteLine($"Counted {counter:N} 1s in {sw.Elapsed.TotalMilliseconds} milliseconds");}; binTest();

經(jīng)測試,結(jié)果如下:

PHP:423.50毫秒(平均超過10次運(yùn)行)

C#:530.42毫秒(平均超過10次運(yùn)行)

據(jù)@withinboredom介紹,PHP和C#之間的性能差異是他在去年發(fā)現(xiàn)的。當(dāng)時(shí)他正巧在將一些雜七雜八的文件轉(zhuǎn)移至Dapr(分布式應(yīng)用程序)和Kubernetes,結(jié)果無意中發(fā)現(xiàn):在讀取文件方面,PHP居然比C#更快!

盡管@withinboredom表示目前他最愛的編程語言已變?yōu)镻HP,但這并不代表C#開發(fā)者就要為此放棄一切,用PHP(或更好的C)重寫所有文件的編寫內(nèi)容:“幾毫秒的差距是不會(huì)毀掉開發(fā)者的。”

原文鏈接:Yes, PHP is faster than C# – A Walk Within Boredom

關(guān)鍵詞:

欧美xxxx做受欧美_www.xxxx精品_国产一区二区三区蝌蚪_国产原创欧美精品_国产福利精品一区_亚洲精品久久久久久下一站 _久久精品国产网站_久久99精品国产_久久综合给合久久狠狠狠97色69_91久久久久久久久久久
在线欧美日韩精品| 国产91精品一区二区麻豆亚洲| 麻豆免费精品视频| 亚洲国产欧美日韩另类综合| 亚洲欧洲av一区二区三区久久| www欧美成人18+| 欧美精品一区二区不卡| 精品女同一区二区| 久久亚区不卡日本| 国产清纯白嫩初高生在线观看91 | 国产精品99久久久久久久女警 | 国产精品无码永久免费888| 国产三级久久久| 亚洲丝袜自拍清纯另类| 亚洲国产日韩综合久久精品| 日韩精品一级中文字幕精品视频免费观看 | 精品国产91九色蝌蚪| 中文字幕国产精品一区二区| 亚洲精品国产成人久久av盗摄| 亚洲香蕉伊在人在线观| 美女视频黄免费的久久| 成av人片一区二区| 日韩一级在线观看| 1024成人网色www| 另类专区欧美蜜桃臀第一页| 成人av电影在线| 欧美肥妇bbw| 国产精品网站在线观看| 首页欧美精品中文字幕| 99久久er热在这里只有精品66| 7777精品伊人久久久大香线蕉完整版 | 成人精品免费视频| 欧美男男青年gay1069videost| 久久久美女毛片| 亚洲国产精品视频| 成人av动漫在线| 精品国免费一区二区三区| 亚洲免费成人av| 国产成人av影院| 欧美日韩成人在线| 亚洲蜜臀av乱码久久精品| 精品伊人久久久久7777人| 欧美日韩一区二区三区高清 | 成人欧美一区二区三区小说| 国产综合色产在线精品| 国产精品一卡二| 99视频一区二区| 欧美麻豆精品久久久久久| 欧美电影免费观看高清完整版在线 | 日韩一区二区三区观看| 伊人一区二区三区| caoporn国产一区二区| 久久久午夜精品| 精品一区二区三区在线视频| 99久久99久久精品免费看蜜桃| 国产调教视频一区| 国产精品影音先锋| 久久先锋影音av鲁色资源网| 午夜国产精品一区| 欧美少妇一区二区| 亚洲成av人**亚洲成av**| 色综合久久综合网| 亚洲一区国产视频| 欧美午夜精品久久久久久超碰| 亚洲美女视频一区| 欧美亚洲国产bt| 午夜精品久久久久| 在线电影国产精品| 久久成人18免费观看| 久久精品无码一区二区三区| 成人深夜福利app| 亚洲男帅同性gay1069| 欧美性猛片xxxx免费看久爱| 日韩一区欧美二区| 久久久精品国产免大香伊 | 欧美午夜精品一区二区蜜桃| 亚洲五码中文字幕| 日韩亚洲欧美一区二区三区| 国内成人自拍视频| 国产精品不卡在线| 欧美伊人精品成人久久综合97| 免费日韩伦理电影| 国产精品成人午夜| 5858s免费视频成人| 国产成人在线视频网址| 亚洲色图欧美偷拍| 91精品欧美福利在线观看| 国产伦精一区二区三区| 亚洲美女淫视频| 亚洲精品一区二区精华| 日本久久一区二区三区| 精品一区二区三区香蕉蜜桃| 成人欧美一区二区三区1314| 欧美精品tushy高清| 粉嫩欧美一区二区三区高清影视| 亚洲综合视频在线| 亚洲国产精品国自产拍av| 欧美日韩亚洲高清一区二区| 国产91高潮流白浆在线麻豆| 日韩精品乱码免费| 亚洲美腿欧美偷拍| 国产日韩欧美亚洲| 欧美一区二区三区男人的天堂| 不卡一区中文字幕| 国产一区二区91| 手机精品视频在线观看| 国产精品久久久久久久久晋中| 宅男在线国产精品| 欧美日韩一区二区在线观看| 成人av中文字幕| 国产麻豆精品95视频| 蜜臀av在线播放一区二区三区| 亚洲精品亚洲人成人网在线播放| 久久久精品日韩欧美| 日韩免费性生活视频播放| 色天使色偷偷av一区二区| 国产精品影视在线观看| 极品美女销魂一区二区三区免费| 午夜欧美电影在线观看| 一区二区三区**美女毛片| 国产精品久久久久影院亚瑟| 久久无码av三级| 国产欧美一区二区三区在线看蜜臀| 日韩欧美在线综合网| 欧美精品高清视频| 91啦中文在线观看| aaa欧美色吧激情视频| 亚洲高清一区二区三区| 免费成人在线视频观看| 92精品国产成人观看免费| 成人永久aaa| 国产成人亚洲综合a∨婷婷| 久久国产生活片100| 日本va欧美va精品| 丝袜亚洲另类欧美| 日韩精品免费视频人成| 日日摸夜夜添夜夜添国产精品| 香蕉乱码成人久久天堂爱免费| 一区二区三区中文在线观看| 亚洲欧美乱综合| 亚洲一区二区不卡免费| 日韩av电影一区| 老司机午夜精品| 国产精品18久久久久久久久| 成人精品gif动图一区| 日本韩国欧美国产| 欧美日韩一区成人| 一本色道**综合亚洲精品蜜桃冫| 在线看国产日韩| 日韩视频国产视频| 中文字幕国产一区| 亚洲午夜激情网站| 国产综合久久久久影院| 国产成人精品免费视频网站| 色婷婷综合久久久中文一区二区| 欧美日韩一级黄| 国产欧美日韩另类视频免费观看| 欧美国产禁国产网站cc| 亚洲综合在线视频| 精品一区二区三区免费观看| 99久久精品免费看| 日韩一二三区视频| 一区二区在线观看视频| 国产河南妇女毛片精品久久久 | 日韩一区欧美一区| 亚洲成人av电影| 国产69精品久久久久毛片| 欧美日韩一区二区欧美激情 | 久久aⅴ国产欧美74aaa| 91视频一区二区三区| xnxx国产精品| 亚洲v精品v日韩v欧美v专区| 国产大陆亚洲精品国产| 在线不卡的av| 亚洲欧美日韩在线| 成人一级视频在线观看| 欧美mv日韩mv| 亚洲成人激情av| 在线精品视频一区二区三四| 中文字幕一区二区不卡| 国产精品1024| 久久久久久亚洲综合| 久久成人免费电影| 日韩亚洲欧美综合| 日本亚洲一区二区| 欧美一卡2卡3卡4卡| 夜夜夜精品看看| 在线精品视频免费播放| 中文在线一区二区| 国产99久久久国产精品潘金网站| 欧美成人精品二区三区99精品| 日本亚洲天堂网| 精品动漫一区二区三区在线观看| 免费久久99精品国产| 欧美α欧美αv大片| 久久99精品久久久久久| 精品国产sm最大网站免费看| 国模大尺度一区二区三区| 欧美午夜电影网| 日产精品久久久久久久性色 |