DelphiConcurrent and FreepascalConcurrent
DelphiConcurrent and FreepascalConcurrent
Description
FreepascalConcurrent and DelphiConcurrent by Moualek Adlene are a new way to build Delphi and Freepascal applications which involve parallel executed code based on threads like application servers. DelphiConcurrent and FreepacalConcurrent provide to the programmers the internal mechanisms to write safer multi-thread code while taking a special care of performance and genericity.
In concurrent applications a DEADLOCK may occurs when two threads or more try to lock two consecutive shared resources or more but in a different order. With FreepascalConcurrent and DelphiConcurrent, a DEADLOCK is detected and automatically skipped - before he occurs - and the programmer has an explicit exception describing the multi-thread problem instead of a blocking DEADLOCK which freeze the application with no output log (and perhaps also the linked clients sessions if we talk about an application server).
Amine Moulay Ramdane has extended them with the support of his scalable RWLocks for Windows and Linux and with the support of his scalable lock called MLock for Windows and Linux and he has also added the support for a Mutex for Windows and Linux, please look inside the FreepascalConcurrent.pas file to understand more.
And please read the html file inside to learn more how to use it.
You can go to download the zip files by clicking on the following web link:
https://drive.google.com/drive/folders/1iBhETcbNyx_G1DcfQVEbIBYZSU4MqLZV?usp=sharing
Language: FPC Pascal v2.2.0+ / Delphi 5+: http://www.freepascal.org/
Required FPC switches: -O3 -Sd
-Sd for delphi mode....
You can configure it as follows from inside defines.inc file:
{$DEFINE CPU32} and {$DEFINE Windows32} for 32 bit systems
{$DEFINE CPU64} and {$DEFINE Windows64} for 64 bit systems
- Platform: Windows and Linux (x86)