Hello all,
I have updated my scalable RWLock to version 2.11...
I had to be smarter than that and i have invented a new algorithm
called RWLockX (a scalable RWLock) that is starvation-free and that
doesn't use spin-wait but it uses my portable SemaMonitor , so it
consumes less CPU ressources and it's scalable on multicores, so finally
i have designed and implemented this new algorithm called RWLockX that
supports all those requirements.
I have also upgraded my SemaMonitor so that it supports the setSignal()
and resetSignal() that work the same as setEvent() and resetEvent() of
the manual event object.
I have extensivly verified my new RWLockX algorithm and it's
stable now and i will explain it to you in the near future.
So now my new scalable RWLockX algorithm (a scalable RWLock) , supports
the following requirements:
1- It uses my SemaMonitor , hence it uses less CPU ressources.
2- It scales on multicores
3- It is starvation-free
4- it is portable.
You can download all the variants of my scalable RWLock 2.11 from:
http://pages.videotron.com/aminer/
And please take a look at my new algorithm inside RWLockX.pas.
Thank you,
Amine Moulay Ramdane.