Как использовать интерфейс IObjectPool?
Я хочу применить IObjectPool из Spring к моему коду для создания пула объектов (в моем случае, класса потока). Есть ли какой-нибудь пример или документация о бассейнах с весны?
Это что-то вроде этого:
TMyClass = class(TThread)
public
constructor Create;
procedure Execute; override;
end;
Другой класс:
uses
....
Spring.Container,
Spring.Container.Pool,
Spring.Container.Core,
Spring.Container.ComponentActivator,
Spring.Services,
....;
TOtherClass = class
private
FPool: IObjectPool;
FActivator: IComponentActivator;
....
end;
implementation
constructor TOtherClass.Create;
begin
FActivator := ServiceLocator.GetService<IComponentActivator>;
FPool := TSimpleObjectPool.Create(FActivator, 5 , 10);
FPool.Initialize(nil);
end;
procedure TOtherClass.AProcedure;
var
task: TMyTask;
begin
...
task := FPool.GetInstance(nil);
...
end;
Я использую XE6.
С уважением.