2015-07-17 1 views
0

Я не могу найти ответы в любом месте на этот вопрос, и он должен быть простым.Xcode Objective-C Как передать несколько аргументов в функции с помощью NSThread Ascynchrously

У меня есть функция:

void doSearch(NSURL *searchPathURL, NSArray *searchWords, NSTextView *textView){ 
... 
} 

Я хочу, чтобы создать асинхронный поток для запуска функции выше в фоновом режиме и передать функции трех аргументов типов данных, указанных в приведенном выше прототипа. Ближайший пример, который я нашел должен был обрабатывать один параметр см: How to Pass a parameter to a method from NSTread?

Это не относится к моим потребностям. Как я могу изменить код в примере ссылки выше, чтобы выполнить работу?

ответ

0

Один параметр/аргумент может быть также NSArray или NSDictionary, например

NSDictionary *arguments = @{@"searchPathURL" : searchPathURL, @"searchWords" : searchWords, @"textView" : textView}; 

словаря является один объект и может быть передан через параметр объекта

+0

Благодаря vadian, я использовал NSArray и она работала Великий. Я столкнулся с другой проблемой, когда поток заканчивается из памяти, и я создал новый вопрос под названием «Объекты Xcode-с-аргументы NSThread». –