Real-world examples on optimizing .NET performance - Stefán Jökull Sigurðarson - NDC Oslo 2023

Поделиться
HTML-код
  • Опубликовано: 26 сен 2024

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

  • @tayablackrose29
    @tayablackrose29 Месяц назад

    Extremely well prepared talk! Big hugs to Stefán.

  • @coltyngregoryify
    @coltyngregoryify Год назад +20

    Maybe the best NDC talk AND THEY FILMED IT IN A HALLWAY

  • @martink.7497
    @martink.7497 Год назад +5

    Honestly, never heard of Channels and saw so many optimizations. Well done 👍

  • @desertfish74
    @desertfish74 Год назад +26

    why is there so much crowd noise in the background?

    • @georgepagotelis
      @georgepagotelis 2 месяца назад

      Literally the PowerPoint code is displayed, you can hear him clearly n he speaks slowly.
      Being distracted by “this” noise says a lot about you n other likes how little things annoy/angry at.

    • @MichalDurista
      @MichalDurista 21 час назад

      @@georgepagotelis I bet it has to be so much fun being around you

  • @wojciechmikoajewicz1983
    @wojciechmikoajewicz1983 Год назад +5

    ArrayPool doesn't have a reference to the array after rent, so not returning array to the pool mitigates the point of using ArrayPools but isn't dangerous - do not lead to memory leaks. You don't need to be orthodox and write some finalizers to be extremally sure that array will return to the pool on some edge cases (like exceptions).

    • @Stebet
      @Stebet Год назад +1

      Thanks for the correction. I had overlooked this :)

  • @EternalVids
    @EternalVids Год назад +7

    Was this filmed in the middle of a busy cafeteria?

  • @PaulSebastianM
    @PaulSebastianM Год назад +3

    00:00 Intro
    01:20 Garbage collectio
    03:58 Reference vs. Value types
    05:16 Performance tips

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

    Who does the audio for tech conferences?

  • @BrendonParker
    @BrendonParker 5 месяцев назад +1

    "But if it was to be run on different architectures... (fluke boom in audience) ... it would fail" made me lol 28:02

  • @ErtyHackward
    @ErtyHackward 2 месяца назад +3

    4:46 "If you create a string, send it to a method, that method changes the string, it is going to change the original object." This is not true. Strings are immutable and modifications will return a new string.

  • @weriohjiuhuih
    @weriohjiuhuih Год назад +1

    Isn't Channels same as the "new" Pipe API?

    • @gdargdar91
      @gdargdar91 Год назад

      Channels are made for asynchronous producer-consumer scenarios and they are generic, for any type T. The new pipe API works with raw bytes and provides automatic memory buffer management via memory pooling.

    • @weriohjiuhuih
      @weriohjiuhuih Год назад

      ​@@gdargdar91
      But also Pipes have async producer/consumer pattern, there is two types of pipe, `IPipeReader` and `IPipeWriter`

  • @Anllazsn
    @Anllazsn 9 месяцев назад +1

    Eye opening conference, too bad the noise and claps distract it.

  • @urvhalt
    @urvhalt Год назад

    Performance and .NET in the same sentence...

    • @MarcusGarveysGhost
      @MarcusGarveysGhost 8 месяцев назад +10

      I see you must have been living in a cave since the last couple .Net Core release iterations

  • @styleisaweapon
    @styleisaweapon Год назад +6

    Its about time the working of the garbage collector is considered important instead of treated like a black box. .NET game devs take note, the GC isnt optimized for your use case, so you have to take control and do regular collection manually (GC.Collect(..) )