ගොනු පද්ධතියක අති විශාල ගොනු ගණනක් තිබුනත්, එකිනෙකට සමාන ගොනු සොයාගැනීම ඉතා කාලය‑වැය්යයක්. එවැනි අවස්ථාවලට dsweep නමැති .NET 10‑හි පදනම් වූ duplicate‑file scanner එක නවීන තාක්ෂණික විධි 3ක් භාවිතා කරයි.
මෙම පරීක්ෂකය මුලින්ම ගොනු ප්රමාණය අනුව ගොනු ගොඩක් වෙන් කරයි. ගොනු දෙකේ ප්රමාණය වෙනස් නම්, ඒවා එකම ගොනුවක් වීම අසම්භවය. එම නිසා පළමු පියවරේ කිසිදු hashing‑කියවීමක් නොවෙයි, පමණක් file system metadata පරීක්ෂා කරයි.
එහි පසු, එකම ප්රමාණය ඇති ගොනු සඳහා පළමු 64 KB පමණ sampling කර SHA‑256 quick‑hash ගණනය කරයි. 64 KB තෝරා ගැනීමේ හේතුව වන්නේ බොහෝ විශාල ගොනු (වීඩියෝ, archive, disk image) එකිනෙකට වඩා ඉක්මනින් වෙනස් වීමයි. මේ පියවරේ false‑positive එකක් වුවත්, එය පසුව පූර්ණ hash පියවරට ගෙන යනු ඇත, එමඟින් අත්යවශ්ය I/O පමණක් ඉතිරි වේ.
අවසන් පියවරේ, quick‑hash එකම වූ ගොනු පමණක් පූර්ණ ගොනුවේ SHA‑256 hash ගණනය කරයි. .NET 5‑ට පසු එය SHA256.HashDataAsync වැනි static method එකක් භාවිතා කරමින් කෙටි කේතයක් මගින් සිදු කරයි. මෙය පරණ disposable pattern එකට වඩා සරලයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලාංකීය ඩෙවලප්පර්, අධ්යයන කාර්ය මණ්ඩල සහ ව්යාපාරිකයින්ට මෙම ක්රමය ගොනු කළමනාකරණයේ කාර්යක්ෂමතාව ඉහළ දැමීමට උදව් කරයි. විශාල වීඩියෝ ගොනු, පෞද්ගලික backup, සහ සංස්කරණ ව්යාපෘති වල duplicate ගොනු ඉවත් කිරීමෙන් storage පිරිවැය අඩු වේ, backup වේගය වැඩිවේ. තවද, .NET 10‑හි CLI‑වල වේගය නිසා ලොකු පරිමාණ පරීක්ෂණයක් තත්පර කිහිපයකින්ම කරගත හැක, ඒ නිසා තාක්ෂණික කණ්ඩායම්වලට වේලාව සුරකිමින් වැඩි නිෂ්පාදනශීලීත්වයක් ලැබේ.
ඉන්පසු, reversible quarantine යන විශේෂත්වයත් සමඟ, සොයාගත් duplicate ගොනු තාවකාලිකව වෙනත් ෆෝල්ඩරයකට ගෙන යා හැක, අවශ්ය නම් ඉක්මනින් නැවත ප්රතිස්ථාපනය කළ හැක. මෙය වැරදි delete කිරීමේ අවදානම අඩු කරයි.
ඉදිරි කාලයේ, .NET‑හි performance‑optimised CLI tools භාවිතා කිරීම ශ්රී ලංකාවේ software development ecosystem එකේ තරඟශීලීත්වය වැඩි කරයි.