HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – Core Image在首次渲染时要慢很多倍大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我找不到Apple的任何文档来解释为什么这段代码以不同的速度运行,具体取决于它运行的次数.

- (void)speedTest2:(CIImage*)source {
    NSTimeInterval start = CFAbsoluteTimeGetCurrent();

    CIFilter* filter = [CIFilter filterWithName:@"CIColorInvert"];
    [filter SETVALue:source forKey:kCIInputImageKey];

    CGImageRef cgImage = [_context createCGImage:filter.outputImage fromRect:source.extent];
    UIImage* output = [UIImage imageWithCGImage:cgImage];
    if (cgImagE)
        CFRelease(cgImagE);
    _source.image = output;

    NSLog(@"time: %0.3fms",1000.0f * (CFAbsoluteTimeGetCurrent() - start));
}

运行时间

>全新的app安装 – 首次调用方法= 206ms
>应用程序重启 – 首次调用方法= 61ms
>第二次调用方法(第3,第4,……)= 14ms

每次运行都使用相同的源图像.

我知道Core Image连接过滤器链.这是以某种方式被缓存?我是否可以预先缓存此操作,以便用户在首次启动应用时不会遇到性能问题?

这个让我发疯:(

解决方法

开销的一部分可以是图像库本身加载.如果效果实现为像素着色器,则可能会在幕后进行编译步骤.

这种隐藏的成本是不可避免的,但您可以选择在更方便的时间进行.例如,在加载应用程序时.

我建议加载一个小图像(1×1像素)并在加载过程中对它应用一些效果,看它是否有帮助.

您可能还想尝试Apple官方论坛以获得@L_262_14@.

大佬总结

以上是大佬教程为你收集整理的ios – Core Image在首次渲染时要慢很多倍全部内容,希望文章能够帮你解决ios – Core Image在首次渲染时要慢很多倍所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。