|Posted: Sat Mar 27, 2010 4:57 pm
I have updated Threadpool to version 1.3 - a stable version -
Lock-free ParallelQueuerb and lock-free RingBuffer have been added
Author: Amine Moulay Ramdane
Language: FPC Pascal v2.2.0+ / Delphi 5+:
Operating Systems: Win , Linux and Mac (x86).
Lock-free Thread Pool Engine.
The following have been added:
-- Lockfree ParallelQueue for less contention and more efficiency
or it can use lockfree_mpmc - flqueue that i have modified, enhanced
and improved... - ...
- It uses a lock-free queue for each worker thread and work-
- for more efficiency -
- The worker threads enters in a wait state when there no job in the
lock-free queues - for more efficiency -
- You can distribute your jobs to the worker threads and call any
method with the threadpool's execute() method.
Look into defines.inc there is many options:
ParallelQueue: it uses lock-free ParallelQueue - very efficient -
Lockfree_MPMC: it uses lockfree_MPMC
ParallelQueuerb: it uses lock-free ParallelQueuerb (New)
RingBuffer: it uses lock-free RingBuffer (New)
SINGLE_PRODUCER: for a single producer (thread)
MUTIPLE_PRODUCER: mutiple producer (threads)
CPU32: for 32 bits architecture
Required FPC switches: -O3 -Sd -dFPC -dWin32 -dFreePascal
-Sd for delphi mode....
Required Delphi switches: -DMSWINDOWS -$H+
For Delphi 5,6,7 use -DDelphi
For Delphi 2005,2006,2007,2009,2010+ use the switch -DDELPHI2005+
Please look at the examples test.pas,test_pool.pas and
test_thread.pas insode the zip...
Note: test_pool.pas does require Delphi 5+, test.pas and
test_thread.pas works with both FreePascal and Delphi
You can download the new and stable version 1.3 from:
My Threadpool is VERY easy to use, and here is a page
that i wrote about it:
Amine Moulay Ramdane.
|Back to top
All times are GMT
The time now is Sat Aug 23, 2014 1:25 pm