DelphiXE上でRemObjectsSDKを使用して作成されたWebサービスがあり、彼の作業を行うにはcomオブジェクト(具体的にはDMOを使用したデータベースへのAdo接続)を使用する必要がある関数が公開されています。この関数を何度も呼び出すと、Webサービスを使用するメモリが劇的に増加することがわかりました。
メモリリークの原因は、comオブジェクト用に予約されているメモリが解放されないことです。
それを修正するために私は何をしなければなりませんか?
ありがとう
コード:
constructor TA.Create;
begin
inherited Create;
oServer := CoSQLServer.Create;
end;
destructor TA.Destroy;
begin
oServer := nil;
end;
宣言
class function CoSQLServer.Create: _SQLServer;
begin
Result := CreateComObject(CLASS_SQLServer) as _SQLServer;
end;