相关疑难解决方法(0)

在Objective-C类中混合C函数

我正在编写一个Objective-C类,但是它使用了用C编写的API.这很好,因为使用Objective-C调用混合C调用几乎没有问题.

但是,其中一个API调用需要回调方法(示例):

success = CFHostSetClient(host, MyCFHostClientCallBack, &context);
Run Code Online (Sandbox Code Playgroud)

MyCFHostClientCallBackC函数在哪里定义如下:

static void MyCFHostClientCallBack(CFHostRef host, CFHostInfoType typeInfo, const CFStreamError *error, void *info);
Run Code Online (Sandbox Code Playgroud)
  1. 可以/如何使用Objective-C方法代替此方法?
  2. 可以/我应该将C函数与Objective-C调用混合使用吗?
  3. 如何将C函数与Objective-C方法混合使用?

c cocoa objective-c callback

39
推荐指数
4
解决办法
5万
查看次数

优化的方法来搜索iphone范围内的设备IP地址

我有情况在哪里我必须搜索**路由器**的IP地址,我知道它的范围是从范围163.289.2.0到163.289.2.255.我知道这不是搜索的好方法.

for i in 1... 255 {

var str = "163.289.2." + "i"
var tempIP = Ping.getIPAddress(str)

if(tempIP == true)
{
   break;
}

}
Run Code Online (Sandbox Code Playgroud)

现在我的问题是我的自定义类Ping.getIPAddress()需要3秒才能获得给定IP值的结果.因此,对于255次搜索,大约需要765秒(12.75分钟).我有限制搜索应该在最多2分钟内完成.所以无论如何我可以使用swift在iPhone中实现这一点.

我必须只使用这个自定义函数Ping.getIPAddress(),如果存在给定的IP地址则为true,否则为false.

请提供解决此问题的示例或参考或方法.

使用NSOperationQueue和MaxConcurrentOperationCount设置为10会不错?

iphone algorithm search ios swift

16
推荐指数
1
解决办法
694
查看次数

标签 统计

algorithm ×1

c ×1

callback ×1

cocoa ×1

ios ×1

iphone ×1

objective-c ×1

search ×1

swift ×1