Parsing with ReadOnlySpan and first try of OBJ reader

C#, Performance, Unmanaged, Parser, Span, 3D, .NET Core,

Hi Everyone.
I think every one of us at least one time did your parser of some text format csv/xml/html/ etc. to learn format or to learn language approach to do that or just for fun.

I did that many times, but always I didn't have enough time or/and patience to lead it to production-ready or just find better implementation. Nevertheless, I got the experience and have no regrets about it.

For your attention, my way to implement parser with Span and some tricks.

All things I demonstrate below were used for implementing 3D OBJ format reader.

Читать дальше →

Handling unmanaged resources with Dispose & Finalize

C#, Performance, Unmanaged, GC, SharpDX, Architectural pattern,

Hi Everyone.
We all work in a managed world we do not control objects' lifetime do not worry about memory allocation (in most cases). We have GC and it does its work excellent. But the unmanaged word still exists and often we forced to interact with it. Let's talk a bit about unmanaged resources and managed approaches to acting with it.

Читать дальше →