ජාවාස්ක්‍රිප්ට් හි මතක කාන්දුවීම් හඳුනා ගැනීමට ෆේස්බුක් විවෘත මූලාශ්‍ර රාමුව

ෆේස්බුක් (රුසියානු සමූහාණ්ඩුවේ තහනම් කර ඇත) ගතිකව වෙන් කරන ලද මතකයේ (ගොඩවල්) කොටස් විශ්ලේෂණය කිරීමට, මතකය සමඟ වැඩ කිරීම ප්‍රශස්ත කිරීම සඳහා උපාය මාර්ගයක් තීරණය කිරීමට සහ ජාවාස්ක්‍රිප්ට් ක්‍රියාත්මක කිරීමේදී සිදුවන මතක කාන්දුවීම් හඳුනා ගැනීමට නිර්මාණය කර ඇති මෙම්ලැබ් මෙවලම් කට්ටලයේ මූලාශ්‍ර පෙළ විවෘත කර ඇත. කේතය. කේතය MIT බලපත්‍රය යටතේ විවෘත මූලාශ්‍ර වේ.

වෙබ් අඩවි සහ වෙබ් යෙදුම් සමඟ වැඩ කිරීමේදී අධික මතක පරිභෝජනයට හේතු විශ්ලේෂණය කිරීම සඳහා රාමුව නිර්මාණය කරන ලදී. නිදසුනක් ලෙස, Facebook.com වෙබ් අඩවියේ නව අනුවාදයක් භාවිතා කරන විට මතක පරිභෝජනය විශ්ලේෂණය කිරීමට memlab භාවිතා කරන ලදී, නිදහස් මතකය වෙහෙසට පත්වීම හේතුවෙන් සේවාලාභියාගේ පැත්තේ බ්‍රවුසරයේ බිඳ වැටීමකට තුඩු දුන් කාන්දුවීම් අනාවරණය විය.

ජාවාස්ක්‍රිප්ට් කේතය ක්‍රියාත්මක කිරීමේදී මතකය කාන්දු වීමට හේතු විය හැක්කේ වස්තූන් වෙත සැඟවුණු යොමු තිබීමයි, එම නිසා කුණු එකතු කරන්නාට වස්තුවේ ඇති මතකය නිදහස් කළ නොහැක, අසාධාරණ ලෙස අගයන් හැඹිලිගත කිරීම හෝ පැරණි ලැයිස්තු අයිතම ඉවත් නොකර අසීමිත අනුචලනය ක්‍රියාත්මක කිරීම. . උදාහරණයක් ලෙස, ක්‍රෝම් හි පහත කේතයේ, "obj" වස්තුව නිසා මතක කාන්දු වීමක් සිදු වේ, එය ශුන්‍ය ලෙස සකසා තිබියදීත්, ක්‍රෝම් ප්‍රතිදාන වස්තු සඳහා අභ්‍යන්තර යොමු ගබඩා කරන නිසා ඒවා පසුව පරීක්ෂා කිරීමට ඉඩ සලසයි. වෙබ් කොන්සෝලය. var obj = {}; කොන්සෝල ලොගය (obj); obj = null;

Memlab හි ප්රධාන ලක්ෂණ:

  • බ්රවුසරයේ මතක කාන්දුවීම් හඳුනාගැනීම. Memlab ඔබට ගතික මතක ස්නැප්ෂොට් ස්වයංක්‍රීයව සංසන්දනය කිරීමට, මතක කාන්දුවීම් හඳුනා ගැනීමට සහ සමස්ත ප්‍රතිඵල ලබා ගැනීමට ඉඩ සලසයි.
  • ඔබට ඔබේම කාන්දුවීම් හඳුනාගැනීමේ ඇල්ගොරිතම ක්‍රියාත්මක කිරීමට සහ ගොඩ සැණෙළි විශ්ලේෂණය සඳහා පද්ධති ක්‍රියාත්මක කිරීමට ඉඩ සලසන වස්තු-නැඹුරු ගොඩ ගමන් API. Heap විශ්ලේෂණය Chromium එන්ජිම මත පදනම් වූ බ්‍රවුසර සඳහා මෙන්ම Node.js, Electron සහ Hermes වේදිකා සඳහා සහය දක්වයි.
  • මතක භාවිතය ප්‍රශස්ත කිරීමට අවස්ථා සොයා ගැනීම සඳහා විධාන රේඛා අතුරුමුහුණත සහ API.
  • Node.js සඳහා තහවුරු කිරීමේ පද්ධතියක් ඔබට ඒකක පරීක්ෂණ නිර්මාණය කිරීමට සහ Node.js මත පදනම් වූ වැඩසටහන් ක්‍රියාත්මක කිරීමට ඔබට ඉඩ සලසයි.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න