New pull request (#90). Please review and accept.

I've got a pull request coming soon. I am just having a little problem right now, with the push being rejected. Sorting out the problem.

Atomic<T> in OtlSync is commented out. Why?

The code does not compile when DONT_TRUST_EMBARCADERO_THREADING_LIBRARY is not defined.

Otl.Parallel.Tasks:

FAllThreadsDone: ICountDown;

{$IFDEF DONT_TRUST_EMBARCADERO_THREADING_LIBRARY}
FWorkFactory.FAllThreadsDone.Signal;
{$ELSE}
FWorkFactory.FAllThreadsDone.AddResource( -1);
{$ENDIF}

ICountDown doesn't implement AddResource method.

I don't understand how some stuff from Otl.Parallel.Extras, namely public

class function Future<T>( const WF: IWorkFactory; Func: TFutureFunc<T>): IFuture<T>;
class function ValuePipeline<T>( const WF: IWorkFactory; Capacity, LowWaterMark, HighWaterMark: cardinal): IValuePipeline<T>;

plugs into the big scheme. Isn't Future<T> adequately covered by OtlParallel's IOmniFuture<T>?

Is it OK that TVolatileInt32/UInt32/Int64/UInt32 declare Initialize as {$IFDEF ARM} inline; {$ENDIF} while TVolatileObject/Pointer declare Initialize as {$IFNDEF USE_SLACKSPACE_ALIGNMENT} inline; {$ENDIF} ?

Hi Primoz, Sorry for the late reply. I have done a code review and I am happy with Sean's changes to be added..

Are there any news about the project?

Please merge request #77.

I've been using OTL in production code. (web server application).

I have one more pull request. (HeavyPool + MREW). Please merge.

Functionally, I am done. TODO is now:
1. Add / Tidy-up unit header comments
2. Add more in-line comments in the interface sections describing classes and methods.
3. Make the aforementioned website.
4. Populate the aforemented website with lots of tasks and example solutions.
Wait while more posts are being loaded