This is video is the start of a brand new series of videos about C# / CLR internals. We're going to look at C# Switch Case Internals and what interesting things happen under the hood and how well it performs as compared to if-else statements.
Sztuka programowania 1502 dni, 19 godzin, 17 minut temu 27 źrodło rozwiń
2nd post form my ".NET Internals" series. Today you'll see how stack and heap data structures are organized and used. You'll also get to know where value and reference types are stored in memory. Come and enjoy! :)
Sztuka programowania 2290 dni, 19 godzin, 4 minuty temu 93 źrodło rozwiń
First, introductory post to my new ".NET Internals" series. Next posts will be published each Wednesday from today, so I invite you all to follow the series :) First post is the introduction to basic concepts of memory structure.
Sztuka programowania 2297 dni, 19 godzin, 2 minuty temu 116 źrodło rozwiń
Welcome to my new series about Sorting and .NET Internals. It has started as a simple question Hey, I wonder how sorting implementation looks like in .NET?. This was planned as one one bl...
Architektura 2307 dni, 20 godzin, 14 minut temu 51 źrodło rozwiń
Reading time ~6 minutes In most cases .NET manages to solve the DLL hell problem pretty well, but sometimes it all falls apart, and when it does in best case scenario we see something like this:Could not load file or assembly 'XXXX, Version=X.Y.Z.W, Culture=neutral, PublicKeyToken=eb42632606e9261f' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) The much worst case is this:The method 'XXXX' was not fou...
Bardzo często na blogu poruszam tematykę c# internals. Bez nich, praktycznie niemożliwe jest pisanie optymalnego kodu. Jeśli ktoś np. nie wie jak async\await jest zaimplementowany wewnętrznie, bardzo łatwo może popełnić błędy podczas pisania kodu c#. Niedawno ktoś zasugerował mi, abym wyjaśnił bardziej IL. Bardzo często wklejam fragmentu kodu z Reflector’ora i nie wyjaśniam szczegółów. Z tego względu, przez kilka kolejnych wpisów zajmiemy się CLR internals oraz IL. Na początek podstawowe pytanie, co to...
Of course, the problem as it is not difficult to resolve. We can use the reflection to do that and that’s all. But what will happen if we have such a class: Then, you cannot simply use reflection without the knowledge about input parameters. Of course, if it cannot work with some default values like null or string.Empty then you could put some dummy information to every argument, and after that assign during the deserialization process you will assign the proper data to fields.
Dziś kilka słów o tym, czego możemy spodziewać się po .NET jeśli idzie o niektóre możliwości systemu plików. - Panie Michale, to JEDNYM słowem, jak to jest z tym wsparciem dla niektórych rzadziej używanych funkcji systemu plików w .NET? - Dobrze. - A dwoma słowami? - Nie dobrze. Nudne wprowadzenie Wszystkie programy .NET są jednocześnie aplikacjami Win32, co oznacza, że pracują w ramach podsystemu Windows, który realizowany jest przez proces csrss.exe. Jego nazwa rozwija się do Client/Server Run-Time...
W poprzedniej notce pisałem o implementacji lock’a i do zilustrowania pewnych szczegółów użyłem metody GetHashCode analizowanego obiektu. Tym razem przyjrzymy się bliżej samej metodzie GetHashCode, dziedziczonej przez wszystkie klasy z bazowej klasy Object i często traktowanej po macoszemu, lub też bez właściwego zrozumienia. Niestety potrafi się to zemścić, a w jaki sposób, to spróbuję za chwilę zademonstrować, po czym postaram się podać kilka rad co z tym fantem począć. O tym, że metoda GetHashCode jes...