Hello...
About Monitors..
I have just took a look at the following about an implementation of
Win32 Condition Variables and Monitors for Delphi:
https://blog.gurock.com/software/win32-condition-variables-and-monitors-for-delphi/
But i think that my inventions that are my SemaMonitor and my SemaCondvar are much "powerful", here they are:
https://sites.google.com/site/scalable68/semacondvar-semamonitor
Read about my SemaMonitor and my SemaCondvar and you will notice
that they are a more capable inventions.
And now i think that i will construct a higher abstraction that is a Monitor over my SemaCondvar, but this Monitor will support the following:
My new Monitor will support the following:
"If you don't want the signal to be lost if the threads are not waiting, just pass True to the state argument of to the constructor, if you pass False to the state argument of the construtor so the signals will be lost if the threads are not waiting."
Also i think i will add support of priorities to my inventions that are my SemaMonitor and my SemaCondvar, they will support the following priorities:
You will be able to give the following priorities:
LOW_PRIORITY
NORMAL_PRIORITY
HIGH_PRIORITY
And more than that i will add my following invention that is my Fast Mutex that is powerful to my SemaMonitor and to my SemaCondvar and to my new Monitor, read about it in my following thoughts:
More about research and software development..
I have just looked at the following new video:
Why is coding so hard...
https://www.youtube.com/watch?v=TAAXwrgd1U8
I am understanding this video, but i have to explain my work:
I am not like this techlead in the video above, because i am also an "inventor" that has invented many scalable algorithms and there implementions, i am also inventing effective abstractions, i give you an example:
Read the following of the senior research scientist that is called Dave Dice:
Preemption tolerant MCS locks
https://blogs.oracle.com/dave/preemption-tolerant-mcs-locks
As you are noticing he is trying to invent a new lock that is preemption tolerant, but his lock lacks some important characteristics, this is why i have just invented a new Fast Mutex that is adaptative and that is much much better and i think mine is the "best", and i think you will not find it anywhere, my new Fast Mutex has the following characteristics:
1- Starvation-free
2- Good fairness
3- It keeps efficiently and very low the cache coherence traffic
4- Very good fast path performance (it has the same performance as the
scalable MCS lock when there is contention.)
5- And it has a decent preemption tolerance.
this is how i am an "inventor", and i have also invented other scalable algorithms such as a scalable reference counting with efficient support for weak references, and i have invented a fully scalable Threadpool, and i have also invented a Fully scalable FIFO queue, and i have also invented other scalable algorithms and there inmplementations, and i think i will sell some of them to Microsoft or to
Google or Embarcadero or such software companies.
So as you have noticed i am an "inventor" and i think i will sell
some of my software inventions and there implementations to
Google or to Intel or to Microsoft or to Embarcadero or such
companies.
Thank you,
Amine Moulay Ramdane.