💻 ක්රමලේඛනය
·
🕒 කියවීමට විනාඩි 2
·
👁 1
.NET 8 හි SearchValues<T> භාවිතයෙන් ලොග් පාර්සරකයේ සෙවුම් වේගය දෙගුණක් වඩා වැඩි විය
ඔබගේ .NET යෙදුම තුළ තෙරපුම් (string) සෙවීමේ වේගය වැඩි කර ගැනීමට නවතම SearchValues වර්ගය කෙලින්ම හඳුන්වා දී තිබේ. මෙම නව API .NET 8 හි System.Buffers නාමාවලියට එකතු කර ඇත, එය එක් වරක් සකස් කරන ලද අක්ෂර කට්ටලයක් මත ඉක්මන් සෙවුම් අලගු පද්ධතියක් තෝරයි.
ලේඛන (log) විශ්ලේෂකයක් පවත්වාගෙන යන ලේඛකයෙක්, IndexOfAny() ක්රමය හා SearchValues දෙකම භාවිතා කරමින් 32 MB පමණ ප්රමාණයේ වාසිමය ලොග් බෆර් එකක් පරීක්ෂා කළේය. පරීක්ෂණයේ ප්රථම තත්ත්වය (dense delimiters) හි IndexOfAny(char[]) 10.2 ms, SearchValues 9.7 ms ලෙස අඩු කාලයක් ගෙන ඇත. නමුත් අතිශය කුඩා ලුහුබැඳීම් (rare delimiters) සමඟ පරීක්ෂා කළ විට SearchValues 3.3 ms, IndexOfAny(char[]) 5.6 ms ලෙස 1.7 ගුණයක් වේගවත් විය.
මෙම ප්රතිඵල පෙන්වන්නේ SearchValues නවීන CPU වෙත vectorized ක්රමය භාවිතා කර, දිගු අක්රමික පරාසයක් ඉක්මනින් ගමන් කිරීමේ හැකියාව ඇති බවයි. එසේම, අතුරු ලූප් (manual loops) භාවිතා කරන කේතය, API එකක් භාවිතා කරනවට වඩා දෙගුණක් පමණ අඩු වේගයක් දක්වයි. ඒ නිසා, කේතය සරල කර API භාවිතා කිරීමම වැඩි දක්ෂතාවයක් ලබා දේ.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ තාක්ෂණික ආයතන, විශ්වවිද්යාල සිසුන් හා නිදහස් සංවර්ධකයන්ට මෙම නව API එකේ ප්රයෝජන විශාල වේ.
- සිසුන් – C# පාඨමාලා තුළ සෙවුම් අලගු ක්රමය පිළිබඳ නව උදාහරණයක් ලෙස භාවිතා කර, ක්රියාකාරී කාර්ය සාධනයේ වැදගත්කම තේරුම් ගැනීමට හැකියාව ලැබේ.
- සංවර්ධකයන් – ලොග් විශ්ලේෂණ, දත්ත පාරිභෝගිකය, හෝ ඕනෑම තෙරපුම්-මූලික පද්ධතියකදී SearchValues භාවිතා කර, CPU භාවිතය අඩු කර, පද්ධතියේ ප්රතිචාර වේගය වැඩි කරගත හැක.
- ව්යාපාර – වැඩි පරිමාණයේ ලොග් ගොනු, API පිළිතුරු හෝ රියල්-ටයිම් දත්ත ප්රවාහයන් සකස් කරන සමාගම්, මෙය භාවිතා කර ගතහොත් පරිපාලන පිරිවැය අඩු කර, සේවා නාමිකතාව වැඩි කර ගත හැක.
අවසන් වශයෙන්, SearchValues භාවිතා කිරීමේ ප්රධාන රහස, එය ස්ථාවර (static) readonly ක්ෂේත්රයක් ලෙස සකස් කර, එක් වරක් පමණක් නිර්මාණය කිරීමයි. මෙය නොකළහොත්, ගැඹුරු ලූප් එකක් තුළ අලුත් අගය සෑදීමෙන් පරිණාමය අඩු වේ.
ඔබේ යෙදුමට SearchValues එකතු කිරීමේ අවස්ථාව පරීක්ෂා කර, කාර්ය සාධනයේ සැබෑ වෙනසක් දැකන්න.
💡 ඔබේ යෙදුමට SearchValues<T> එකතු කර, කාර්ය සාධනය වැඩි කර බලන්න!
මූලාශ්රය
මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#SearchValues
#Performance
#C#
#.NET
#LogParsing