No. (*)
The connection is returned when the IDBConnection interface retrieved from the pool gets its reference count set to zero. Thus, you have to keep a reference to the interface during the time you use the adapted connection, for instance:
var
Conn: IDBConnection;
FDConn: TFDConnection;
begin
Conn := Global_Pool.GetConnection; // "save" the reference
FDConn := (Conn as IDBConnectionAdapter).AdaptedConnection as TFDConnection;
// use FDConn
// When the method finishes (or when Conn is set to nil), then the interface is released
// and the underlying TFDConnection component is destroyed.
end;
(*) Well, yes and no. It will reserve the retrieved connection, but it will be immediately returned to the pool when the interface is out of scope. In this specific case probably Delphi compiler will keep the interface reference until the method is finished. But it's safer if you keep an explicit reference to the interface so you know more clearly when it's released.