
عنوان:
C# Concurrency
نویسنده:
Nir Dobovizki
انتشارات:
Manning City: Shelter Island, NY
تاریخ انتشار:
2025
حجم:
1.3MB
معرفی کتاب:" همزمانی در سیشارپ: برنامهنویسی غیرهمزمان و چندنخی در #C "
با راهنمای نهایی برای برنامهنویسی غیرهمزمان و چندنخی در #c، به برنامههای خود قدرتی چشمگیر بدهید!
کتاب «همزمانی در #C» به شما آموزش میدهد چگونه نرمافزارهای چندنخی و غیرهمزمان مؤثری در
#c بنویسید.
تکنیکهای عملی، مثالهای واقعی، و نمونهکدهای مفید، ابهامات مربوط به async/await
را از بین
میبرند
و به شما کمک میکنند کدی سریع، قابل اعتماد و بدون باگ بنویسید.
در «همزمانی در #c» خواهید آموخت:
- استفاده کامل از async/await
- نوشتن کد چندنخی بدون باگ
- ایجاد کدی چندنخی با بهبود عملکرد واقعی
- درک مفاهیم چندنخی و ابزارهای غیرهمزمان در #c و NET.
- تشخیص زمان مناسب استفاده از تکنیکهای همزمانی
درباره نویسنده:
نیر دوبووِزکی، برنامهنویسی باتجربه با بیش از ۳۰ سال سابقه در توسعه سیستمهای با کارایی بالا است. او با دانش عمیق خود، راهحلهایی برای مدیریت بنبستها، باگهای پنهان و رقابتهای همزمانی ارائه میدهد.
درباره فناوری:
برنامههای غیرهمزمان و چندنخی میتوانند چندین کار را همزمان انجام دهند بدون آنکه سرعت یا پایداری قربانی شود. این کتاب به شما میآموزد چگونه برنامههایی با عملکرد بالا و بدون خطاهای همزمانی بنویسید.
آنچه در کتاب خواهید یافت:
- ابزارهای چندنخی و غیرهمزمان در NET.
- راهنمای استفاده یا عدم استفاده از تکنیکهای همزمانی
- آموزش async/await بهصورت حرفهای
مخاطبان کتاب:
این کتاب برای برنامهنویسان باتجربه #c طراحی شده که با برنامهنویسی غیرهمزمان آشنا نیستند اما میخواهند مهارتهای خود را در این حوزه گسترش دهند.
فهرست مطالب
- C# Concurrency
- brief contents
- contents
- preface
- acknowledgments
- about this book
- about the author
- about the cover illustration
- Part 1
- 1 Asynchronous programming and multithreading
- 1.1 What is multithreading?
- 1.2 Introducing multicore CPUs
- 1.3 Asynchronous programming
- 1.4 Using multithreading and asynchronous programming together
- 1.5 Software efficiency and cloud computing
- 2 The compiler rewrites your code
- 2.1 Lambda functions
- 2.2 Yield return
- 3 The async and await keywords
- 3.1 Asynchronous code complexity
- 3.2 Introducing Task and Task<T>
- 3.3 How does async/await work?
- 3.4 async void methods
- 3.5 ValueTask and ValueTask<T>
- 3.6 What about multithreading?
- 4 Multithreading basics
- 4.1 Different ways to run in another thread
- 4.2 Accessing the same variables from multiple threads
- 4.3 Special considerations for native UI apps
- 4.4 Waiting for another thread
- 4.5 Other synchronization methods
- 4.6 Thread settings
- 5 async/await and multithreading
- 5.1 Asynchronous programming and multithreading
- 5.2 Where does code run after await?
- 5.3 Locks and async/await
- 5.4 UI threads
- 6 When to use async/await
- 6.1 Asynchronous benefits on servers
- 6.2 Asynchronous benefits on native client applications
- 6.3 The downside of async/await
- 6.4 When to use async await
- 7 Classic multithreading pitfalls and how to avoid them
- 7.1 Partial updates
- 7.2 Memory access reordering
- 7.3 Deadlocks
- 7.4 Race conditions
- 7.5 Synchronization
- 7.6 Starvation
- Part 2
- 8 Processing a sequence of items in the background
- 8.1 Processing items in parallel
- 8.2 Processing items sequentially in the background
- 9 Canceling background tasks
- 9.1 Introducing CancellationToken
- 9.2 Canceling using an exception
- 9.3 Getting a callback when the caller cancels our operation
- 9.4 Implementing timeouts
- 9.5 Combining cancelation methods
- 9.6 Special cancellation tokens
- 10 Await your own events
- 10.1 Introducing TaskCompletionSource
- 10.2 Choosing where continuations run
- 10.3 Example: Waiting for initialization
- 10.4 Example: Adapting old APIs
- 10.5 Old-style asynchronous operations (BeginXXX, EndXXX)
- 10.6 Example: Asynchronous data structures
- 11 Controlling on which thread your asynchronous code runs
- 11.1 await-threading behavior
- 11.2 Synchronization contexts
- 11.3 Breaking away—ConfigureAwait(false)
- 11.4 More ConfigureAwait options
- 11.5 Letting other code run: Task.Yield
- 11.6 Task schedulers
- 12 Exceptions and async/await
- 12.1 Exceptions and asynchronous code
- 12.2 await and AggregateException
- 12.3 The case of the lost exception
- 12.4 Exceptions and async void methods
- 13 Thread-safe collections
- 13.1 The problems with using regular collections
- 13.2 The concurrent collections
- 13.3 The immutable collections
- 13.4 The frozen collections
- 14 Generating collections asynchronously/await foreach and IAsyncEnumerable
- 14.1 Iterating over an asynchronous collection
- 14.2 Generating an asynchronous collection
- 14.3 Canceling an asynchronous collection
- 14.4 Other options
- 14.5 IAsyncEnumerable<T> and LINQ
- 14.6 Example: Iterating over asynchronously retrieved data
- 14.7 Example: BlockingCollection<T>-like asynchronous queue
- index
مشخصات
نام کتاب
C# Concurrency
نویسنده
Nir Dobovizki
انتشارات
Manning City: Shelter Island, NY
تاریخ انتشار
2025
ISBN
9781633438651
تعداد صفحات
250
زبان
انگلیسی
فرمت
حجم
1.3MB
موضوع
#c