iOS вызывает функции мыла в потоке - PullRequest
0 голосов
/ 09 августа 2011

ребята

Я новый разработчик iOS, у меня возникла проблема при вызове функций мыла в новой теме.

Вот более подробная информация:

Iесть функция, вызывающая мыльный веб-сервис:

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, но на этот раз он не будет печататься).

Я понятия не имею, почему это происходит,

любые подсказки приветствуются!

Спасибо!

1 Ответ

0 голосов
/ 10 августа 2011

Я настоятельно рекомендую вам ознакомиться с шаблоном Sync-Async, как описано в руководстве здесь:

Синхронно-асинхронный шаблон пары - простой параллелизм на iOS

Существует также вопрос, касающийся той же проблемы:

Несколько асинхронных запросов веб-сервиса NSURLConnection iOS

НТН

...