ребята
Я новый разработчик iOS, у меня проблема с вызовом функций мыла в новом потоке.
Вот подробнее:
У меня есть функция, вызывающая веб-службу мыла:
WebService *webService = [[[WebService alloc]init]retain];
[webService getUser:self action:@selector(getUserHandler) userName: usnm encPassword: pswd];
Эта функция просто генерируется с sudzc.com (отличный веб-сайт! Спасибо!) просто вызывая эту функцию, я могу получить
<user><username>XXX</username><userStatus>XXX</userStatus><companyCode>XXX</companyCode><password>XXX</password></user>
вернулся из веб-сервиса. и мой getUserHandler будет работать отлично.
но если я хочу вызвать веб-сервис в таком потоке:
[NSThread detachNewThreadSelector:@selector(myMethod) toTarget:self withObject:nil];
-(void)myMethod
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog(@"!, %@,%@",usnm,pswd);
WebService *webService = [[[WebService alloc]init]retain];
[webService getUser:self action:@selector(getUserHandler) userName: usnm encPassword: pswd];
[pool drain];
}
Кажется, я не получаю returnxml, и кажется, что getUserHandler никогда не запускается (я поместил NSLog в getUserHandler, но на этот раз он не печатается).
Я понятия не имею, почему это происходит,
любые подсказки приветствуются!
Спасибо!
webService
... это может протечь, если вы уже не понимаете, что вам нужно будетrelease
дважды и сделать это. - person GarlicFries   schedule 10.08.2011