Turbocharged: Writing High-performance C# and .NET code, by Steve Gordon

Поделиться
HTML-код
  • Опубликовано: 16 июн 2024
  • In this session, you'll learn how to write C# code which executes faster and allocates less. This session is packed with practical examples and demos of where the latest high-performance APIs and language features can be applied in your applications.
    During this session, we'll apply types such as Span and Memory to efficiently process data and parse strings. We'll examine System.IO.Pipelines, offering high-performance I/O, and we'll utilize ArrayPool to help reduce GC allocations. In .NET Core 3.0, we have new high-performance JSON APIs which we'll also add to our arsenal. Microsoft has made fantastic performance gains to the .NET Core framework - now it's time to apply them to your code!
    We'll begin by discussing when and why performance matters in your applications. You'll learn how to measure your code, and use a data-driven approach to focus your optimisations.
    These features can seem complicated, unapproachable, and difficult to apply. In this session, Steve introduces high-performance newcomers to the features, showing you how they work, where they can be applied, and how to measure performance improvements in your code.
    This talk is for developers, who like Steve, are ready to begin their journey towards writing faster .NET code, which allocates less.
    0:00 - Introduction
    1:21 - What we will cover
    2:18 - Aspects of performance
    11:46 - Benchmark.NET
    16:36 - Span of T
    29:35 - Memory of T
    31:00 - Practical Example: Key Builder
    36:50 - Array Pool
    39:14 - Pipelines
    41:52 - Practical Example: CSV File Parsing
    46:19 - System.Text.Json
    47:59 - Practical Example: JSON Parsing
    55:03 - Business Buy-In
    59:12 - Summary
    1:01:41 - Q&A
    Speaker: Steve Gordon, Microsoft MVP, Pluralsight author and Senior .NET Engineer, Elastic
    Steve Gordon is a Pluralsight author, Microsoft MVP, and senior engineer based in the UK. He works for Elastic, maintaining their .NET client libraries. Steve is passionate about the community and all things .NET related, having worked with ASP.NET for over 16 years. Steve enjoys sharing his knowledge through his blog, in videos, and by presenting talks at user groups and conferences. Steve is excited to be a part of the .NET community and founded .NET South East, a .NET Meetup group based in Brighton. He enjoys contributing to and maintaining OSS projects. You can find Steve online at his blog www.stevejgordon.co.uk and on Twitter as @Steve Gordon.
    Twitter: / stevejgordon
    Blog: www.stevejgordon.co.uk
  • НаукаНаука

Комментарии • 5

  • @Phantom4416
    @Phantom4416 Год назад +4

    A really insightful and thoroughly researched presentation. Thanks for your dedication and willingness to share your knowledge

  • @mystiqkc
    @mystiqkc Год назад +2

    Excellent video. Thanks!

  • @Raminlich
    @Raminlich Год назад +2

    Useful information Thanks.

  • @janjoska2549
    @janjoska2549 3 года назад +3

    Do you have synchronize access to an array from array pools? I presume each thread has its own set of pooled arrays. Also is it safe to use in async methods when not using synchronization context?

  • @smeddows
    @smeddows Год назад +2

    Where do you download the code that he keeps mentioning in the video?