void CSocketListener::StartServiceL() { /* HBufC* threadName = HBufC::NewLC(KMaxFileName); TPtr ptr = threadName->Des(); GenerateUniqueName(ptr, this); RThread service; TRequestStatus status; User::LeaveIfError(service.Create(*threadName, CSocketListener::ThreadFunc, KStackSize, NULL, this)); service.Resume(); service.Close(); CleanupStack::PopAndDestroy(threadName); */ /* CService* service = CService::NewLC(iServerT); service->StartL(iSockClient); iSockClient = NULL; */ for(TInt8 i=0; i< iServicePool.Count(); i++) { CService* service = iServicePool[i]; if(service->IsIdle()) { service->StartL(iSockClient); iSockClient = NULL; break; } } if(iSockClient!=NULL) // if the service pool is fulled, deny a service. { iSockClient->Close(); delete iSockClient; iSockClient = NULL; } // SetActive(); }