TGViewer
Gopher Academy Gopher Academy @gopher_academy · 3.85K subscribers
Post #4261 620
Gopher Academy 📌 Memory Allocation in Go ❌این پست اپدیت می‌شود ❌ 🔹 در این پست به بررسی جزئیات مدیریت حافظه در زبان Go می‌پردازیم. درک درست از ساختار حافظه به شما کمک می‌کند عملکرد برنامه‌هایتان را بهتر بهینه کنید و رفتار Garbage Collector را بهتر بفهمید. 🔵 Introduction…
📌 Two spans with different size classes

🔹 هر Span در Go به یک Size Class خاص تعلق دارد. این Size Class مشخص می‌کند که:

* چند Page در Span قرار بگیرد
* هر Page چند Object را در خود جای دهد

📦 مثال‌ها (تصویر بالا):

ا 1. Size Class 38

* اندازه هر شیء: 2048B
* یک Page (۸KB) دقیقاً ۴ تا شیء 2048B را جا می‌دهد.
* پس کل Span = ۱ Page + ۸ Object

ا 2. Size Class 55

* اندازه هر شیء: 10880B
* هر شیء بزرگ‌تر از یک Page است.
* Span در اینجا روی ۴ Page گسترده می‌شود و ۳ Object را نگه می‌دارد.

🧩 Tail Waste (هدررفت انتهایی)

* دلیل اینکه برای Size Class 55 از ۴ Page استفاده می‌شود و نه ۲ Page، کاهش هدررفت حافظه است.
* اگر ۲ Page می‌گرفت → هدررفت = 5504B
* اگر ۴ Page بگیرد → هدررفت = 128B
* ✅ پس با استفاده از صفحات بیشتر، fragmentation به حداقل می‌رسد.


به زبان ساده:
ا Go با استفاده از Span Class و محاسبه‌ی دقیق Tail Waste**، حافظه را به شکل بهینه تخصیص می‌دهد و از هدررفت جلوگیری می‌کند.

➖➖➖➖➖➖➖➖
👑 @gopher_academy
  • 🏆 1
More from @gopher_academy
  1. Sep 29, 2026📢 معرفی اپ «نویسنده تاریخ و مبلغ چک» موقع نوشتن چک، تاریخ و مبلغ را با حروف نوشتن وقت می‌…
  2. Sep 29, 2026🔵 عنوان مقاله How Do You Add a New Keyword to Go? (For Sum Types) 🟢 خلاصه مقاله: در زبان…
  3. Sep 28, 2026🔵 عنوان مقاله The First Official TinyGo Hardware 'Starter Kit' 🟢 خلاصه مقاله: در دنیای ف…
  4. Sep 28, 2026🔵 عنوان مقاله Is Go's FIPS 140 Code Bloating Your Binaries? 🟢 خلاصه مقاله: در دنیای فناو…
  5. Sep 28, 2026🔵 عنوان مقاله design for sum types 🟢 خلاصه مقاله: طراحی انواع جمع (Sum Types) در حال حاض…
  6. Sep 28, 2026🔵 عنوان مقاله Hister: A Go-Powered Search Engine for Your Own Stuff 🟢 خلاصه مقاله: در دن…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →