ios detachNewThreadSelector,如何使用objects?

时间:2011-06-09 04:22:02

标签: multithreading ios

我知道

detachNewThreadSelector:toTarget:withObject

可以有(id)anArgument。我搜索过它可以用于NSString。

然而,当我传递一个整数或size_t时,它崩溃了。有人能告诉我什么是(id)anArgument?

更重要的是,如何将多个参数传递给线程?例如,我有一个函数,

- (NSInteger)getIneger:(NSInteger)pageNumber withName(NSString *)filename;

这样的事情。 感谢

1 个答案:

答案 0 :(得分:2)

(id)anArgument告诉你的是你需要传递一个Objective-C参数。由于整数和size_t都不是Objective-C对象,因此应用程序崩溃。您需要在NSNumber内打包它才能实现此功能。您还必须更改方法以接收NSNumber而不是int。要传递两个或多个参数,我建议您使用NSDictionary对象来传递基于键的值。您可以定义一个接收NSDictionary对象的方法,解压缩值并调​​用您打算调用的原始方法。