Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Gopher Academy
🔵 عنوان مقاله
Gist of Go: Atomics

🟢 خلاصه مقاله:
در Go، atomics مجموعه‌ای از عملیات سطح‌پایین در بسته sync/atomic هستند که امکان دسترسی thread-safe و lock-free به مقادیر حافظه مشترک را می‌دهند. آن‌ها برای متغیرهای ساده (مثل شمارنده‌ها، فلگ‌های وضعیت، و تعویض ایمن یک اشاره‌گر پیکربندی) بسیار سریع و مناسب‌اند و با Load/Store، Add/Swap و CAS رابطه‌های happens-before لازم را تضمین می‌کنند. وقتی نیاز به حفظ ناهمبستگی‌های چندفیلدی دارید یا به‌روزرسانی چندمرحله‌ای می‌خواهید، استفاده از mutex یا کانال‌ها شفاف‌تر و کم‌خطرتر است. از اختلاط دسترسی atomic و non-atomic به یک متغیر خودداری کنید، به هم‌ترازی و false sharing توجه کنید، و برای داده‌های read-mostly از atomic.Value بهره ببرید. نتیجه: در سناریوهای محدود، همزمانی بدون mutex واقعا شدنی است—به شرط رعایت دقیق مدل حافظه و الگوهای درست.

#golang #concurrency #atomics #lockfree #CAS #multithreading #memorymodel

🟣لینک مقاله:
https://golangweekly.com/link/175632/web


👑 @gopher_academy