gabr42
While the TLightweightMREW is quite handy, it is not perfect. There’s a weird assymmetry in it. On all operating systems that Delphi can compile for, read locks are reentrant (recursive) while write locks are not. In other words,… – Details…
2 weeks ago in Delphi, multithreading, programming, synchronization0
gabr42
In order to convince you that a readers-writer lock is not a stupid idea, I should finally show some numbers. In this article I’ll present a minimalistic (but still real-life) example which allows us to… – Details…
2 weeks ago in Delphi, multithreading, programming, synchronization0
gabr42
In the previous installment I introduced the idea of a readers-writer lock. Today I’ll look into readers-writer lock implementations (yes, multiple) that are available in the Delphi run-time library.Read more »— Published under the Creative… – Details…
3 months ago in Delphi, multithreading, programming, synchronization0
gabr42
One of the pleasant surprises in Delphi 10.4.1 was the addition of a new readers-writer lock implementation TLightweightMREW. While it was probably not noticed by most of the users, I was quite happy to see… – Details…
4 months ago in Delphi, multithreading, programming, synchronization0
gabr42
New OmniThreadLibrary is out! Get it while it’s hot!Version 3.07.8 is mostly a bugfix release. It fixes few small bugs and enables support for Delphi 10.4.You can get it now on git, download the ZIP… – Details…
9 months ago in Delphi, multithreading, OmniThreadLibrary, Open Source0
gabr42
Delphi 10.4 has just been released (turn here for a great overview) and has some nice enhancements even for us, die-hard Windows developers. It is too early to give any deep analysis as I have… – Details…
9 months ago 0
gabr42
Something great has happened on this day, 25 years ago.It was the sign of Aquarius. People were listening to Creep. And the AppBuilder was released.You don’t know AppBuilder? Sure you do! It was developed and —… – Details…
1 year ago in Delphi, delphi25th0
gabr42
Parallel Programming with OmniThreadLibrarye-book: 50% offprinted book: 25% off (use coupon BLACKFRIDAY25)Delphi High Performancee-book: 72% offHands-on Design Patterns with Delphie-book: 80% off— Published under the Creative Commons Attribution 3.0 … – Details…
1 year ago in Delphi; programming; books0
gabr42
The ITDevCon X – the tenth edition! – has just ended and boy was it a blast! (As usual, I should say.)This was my seventh ITDevCon conference and I always like to visit it. This… – Details…
1 year ago in Delphi, ITDevCon, presentations0
gabr42
CompareValue function is incredibly practical when you are writing comparers (functions that determine how some data structure is ordered). System.Math and System.StrUtils define a bunch of functions that can be used to compare integers, doubles,… – Details…
1 year ago in Delphi, programming, tips0
gabr42
On September 26th I’ll talk about RAD Studio Rio in Ljubljana. We’ll discuss 10.3 a bit and 10.3.1/10.3.2 updates in more detail. We’ll also look into the future to see what 10.4 might bring.This will… – Details…
1 year ago in cbuilder, Delphi, presentations, RAD Studio0
gabr42
Pop quiz! How can the following program …Writeln(True);Magic;Writeln(True);… output this:?TRUEFALSESimple!Read more »— Published under the Creative Commons Attribution 3.0 license – Details…
2 years ago in definitely not best practices, Delphi, programming0
gabr42
Delphi never stops surprising me …Did you know that this is a valid syntax?case a of 0: Writeln(0); else Writeln(‘else’); Writeln(a);end;This code indeed compiles and works exactly as the following fragment.case a of 0: Writeln(0); … – Details…
2 years ago in Delphi, programming0
gabr42
Slides and code for the Spring4D conference are now published on the conference page.Slides and code for my two sessions – Design patterns with Spring4D and Interception and dynamic proxy – are also available on… – Details…
2 years ago in Delphi, presentations, Spring4D0