4 ms·
Well, .NET's garbage collector certainly springs to mind. Not exactly in a good way. You know you have something special on your hands when GitHub refuses to sh
by frankjr 4y ago
Well, .NET's garbage collector certainly springs to mind. Not exactly in a good way. You know you have something special on your hands when GitHub refuses to show you a highlighted version of a hand written C++ file (https://github.com/dotnet/runtime/blob/98984ccad55362a66b7fd7a8f198bab13c2496bc/src/coreclr/gc/gc.cpp https://github.com/dotnet/runtime/blob/98984ccad55362a66b7fd...).
Other than that, I remember my mind was blown a few times while watching Jim Weirich's presentation on functional programming all those years ago (https://www.youtube.com/watch?v=FITJMJjASUs https://www.youtube.com/watch?v=FITJMJjASUs).
- nso95 4y agoThe GC code does look like a collection of garbage
- bpye 4y agoYou say hand written but actually, it wasn’t exactly. The original version was apparently in LISP and then translated to C++ [0]. [0] - https://learn.microsoft.com/en-us/archive/blogs/patrick_dussud/how-it-all-startedaka-the-birth-of-the-clr https://learn.microsoft.com/en-us/archive/blogs/patrick_duss...
- bob1029 4y agoThe GC is the only thing I strongly dislike about the .NET ecosystem. I would really like some option to turn it off altogether (like what Java offers). I've got several short-lived applications that are extremely latency sensitive and would work flawlessly this way.
- jcparkyn 4y agoOut of curiosity, do TryStartNoGCRegion and/or GCLatencyMode.SustainedLowLatency not meet your needs?
- bob1029 4y agoI've not had luck with either. The application may allocate more than a single GC segment worth, so the best workaround is to detect an imminent GC and migrate the workload. Unfortunately, migration would incur even more severe penalties than a typical gen2 collection.