Cannot Initialize Streamer that is already in use

On the server side I use thread on the following way (from ServerForm):
(refrer to Calling a service method from inside the server?)

begin
    ClientID:=ServerDataModule.Message.ClientID;
    fClassFactory:=GetClassFactory('SaldoService');
    fClassFactory.CreateInstance(ClientID, instance);

    try
	  try
          	(instance as ISaldoService).GetMyData;
          except
              on e:exception do begin
                ServerForm.LOG4(DateTimeToStr(now)+' -SaldoService '+e.Message);
              end;
          end;
    finally
        fClassFactory.ReleaseInstance(ClientID,instance);
    end;

Is this correct way?
And always I use initialize/finalize construction for WriteDataset and ReadDataset