کتاب همزمانی حرفه‌ای در C#: تسلط بر Primitiveهای Thread Synchronization و برنامه‌نویسی بدون Race Condition با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB

انتخاب پلن

انتخاب پلن برای ادامه خرید الزامی است.

پرداخت اقساطی
در صورت خرید اقساطی هر قسط: 62,488 تومان
۴ قسط ماهانه. بدون سود، چک و ضامن.
پرداخت اقساطی با دیجی‌پی پرداخت اقساطی با ترب‌پی

🎓 دوره آموزشی جامع

📚 اطلاعات دوره

عنوان دوره: دوره همزمانی حرفه‌ای در C#: تسلط بر Primitiveهای Thread Synchronization و برنامه‌نویسی بدون Race Condition

موضوع کلی: برنامه‌نویسی پیشرفته و همزمانی در سی‌شارپ

موضوع میانی: همزمانی، Threading و Synchronization در C#

📋 سرفصل‌های دوره

  • 1. مبانی همزمانی و مدل اجرای Threadها در C#
  • 2. تفاوت Concurrency و Parallelism در برنامه‌های .NET
  • 3. چرخهٔ حیات Thread و مدیریت اجرای همزمان
  • 4. مشکلات دسترسی همزمان به داده‌های مشترک
  • 5. Race Condition و روش‌های بازتولید آن
  • 6. Data Race و پیامدهای آن در برنامه‌های چندنخی
  • 7. Atomicity و اهمیت عملیات اتمیک
  • 8. Memory Visibility و مشاهده‌پذیری تغییرات بین Threadها
  • 9. Memory Ordering و مدل حافظه در .NET
  • 10. نقش Compiler و CPU در بازترتیب عملیات
  • 11. مفهوم Critical Section و حفاظت از منابع مشترک
  • 12. قفل‌گذاری با lock و Monitor
  • 13. Monitor.Enter و Monitor.Exit و الگوی صحیح استفاده
  • 14. Monitor.TryEnter و جلوگیری از انتظار نامحدود
  • 15. Wait و Pulse برای هماهنگ‌سازی Threadها
  • 16. PulseAll و بیدار کردن چند Thread منتظر
  • 17. AutoResetEvent و سیگنال‌دهی بین Threadها
  • 18. ManualResetEvent و کنترل جریان چند Thread
  • 19. ManualResetEventSlim و کاربرد آن در انتظارهای کوتاه
  • 20. EventWaitHandle و هماهنگ‌سازی مبتنی بر Handle
  • 21. Semaphore برای محدودکردن دسترسی همزمان
  • 22. SemaphoreSlim و تفاوت آن با Semaphore
  • 23. استفاده از WaitHandleها در سناریوهای چندنخی
  • 24. Mutex برای همزمانی بین Processها
  • 25. تفاوت Mutex، Monitor و Semaphore
  • 26. ReaderWriterLockSlim برای دسترسی همزمان خواندن و نوشتن
  • 27. Read Lock و Write Lock در ReaderWriterLockSlim
  • 28. Upgradeable Read Lock و کاربرد آن
  • 29. بازگشت‌پذیری Lockها و مفهوم Recursion
  • 30. SpinLock و انتظار چرخشی برای Critical Sectionهای کوتاه
  • 31. SpinWait و کاهش هزینهٔ انتظار فعال
  • 32. Interlocked برای عملیات اتمیک روی داده‌ها
  • 33. عملیات Increment،Decrement و Add با Interlocked
  • 34. CompareExchange و پیاده‌سازی الگوهای Lock-Free
  • 35. Exchange و دسترسی اتمیک به مقادیر مشترک
  • 36. Volatile و تضمین مشاهده‌پذیری حافظه
  • 37. تفاوت volatile با عملیات اتمیک
  • 38. Volatile.Read و Volatile.Write
  • 39. Thread.MemoryBarrier و کنترل ترتیب دسترسی به حافظه
  • 40. ThreadLocal برای نگهداری دادهٔ اختصاصی هر Thread
  • 41. ThreadStatic و محدودیت‌های آن
  • 42. SynchronizationContext و زمینهٔ اجرای کد همزمان
  • 43. Task و ارتباط آن با Primitiveهای Thread Synchronization
  • 44. Synchronization در ThreadPool
  • 45. همگام‌سازی با TaskCompletionSource
  • 46. CancellationToken و هماهنگ‌سازی لغو عملیات
  • 47. WaitHandle و CancellationToken در سناریوهای ترکیبی
  • 48. BlockingCollection و الگوی Producer-Consumer
  • 49. ConcurrentQueue و هماهنگ‌سازی صف‌های چندنخی
  • 50. ConcurrentStack و دسترسی همزمان به Stack
  • 51. ConcurrentDictionary و مدیریت داده‌های مشترک
  • 52. ConcurrentBag و سناریوهای استفاده
  • 53. تفاوت Collectionهای همزمان با Lockهای دستی
  • 54. پیاده‌سازی Producer-Consumer با Primitiveهای همزمانی
  • 55. پیاده‌سازی Thread-Safe Counter
  • 56. پیاده‌سازی Thread-Safe Cache
  • 57. ساخت Lazy Initialization ایمن در برابر Thread
  • 58. Double-Checked Locking و ملاحظات حافظه
  • 59. Deadlock و شرایط ایجاد آن
  • 60. تشخیص و جلوگیری از Deadlock
  • 61. Lock Ordering و جلوگیری از چرخهٔ وابستگی
  • 62. Livelock و تفاوت آن با Deadlock
  • 63. Starvation و ناعادلانه‌شدن دسترسی به منابع
  • 64. Contention و تأثیر آن بر کارایی
  • 65. Timeout در Primitiveهای Synchronization
  • 66. انتخاب Primitive مناسب بر اساس نوع مسئله
  • 67. ترکیب چند Primitive برای ساخت پروتکل همزمانی
  • 68. خطاهای رایج در استفاده از Lock و Monitor
  • 69. مدیریت Exception در کدهای چندنخی
  • 70. تست و بازتولید خطاهای Race Condition
  • 71. تحلیل Thread Dump و وضعیت Threadها
  • 72. دیباگ کردن Deadlock و Thread Contention
  • 73. اندازه‌گیری هزینهٔ Synchronization
  • 74. بهینه‌سازی Critical Sectionها
  • 75. انتخاب بین Lock-Based و Lock-Free Design
  • 76. طراحی ساختارهای داده با Interlocked
  • 77. طراحی الگوریتم‌های Lock-Free پیشرفته
  • 78. ملاحظات Memory Model در طراحی Lock-Free
  • 79. مقایسهٔ Synchronization Primitiveها در سناریوهای واقعی
  • 80. طراحی یک موتور Thread-Safe برای پردازش همزمان
تگ‌ها: .NET C# Deadlock Lock-Free Programming Monitor Multithreading Mutex Race Condition ReaderWriterLockSlim Semaphore Synchronization Primitives Thread Synchronization Threading برنامه نویسی چندنخی همزمانی در C#

نظرات

هنوز نظری ثبت نشده است.

وارد شوید تا نظر ثبت کنید.