gpt4 book ai didi

ios - webViewDidFinishLoad 阻塞主线程

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:10:11 29 4
gpt4 key购买 nike

我刚刚注意到 webViewDidFinishLoad 方法阻塞了整个应用程序,所以我什至无法触摸任何按钮。

我需要解析 UIWebView 的结果页面,这可能会花费很多时间。那么在不阻塞整个应用程序的情况下解析它的最佳方法是什么?也许创建另一个线程?

最佳答案

使用 GCD 在后台解析它:

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
// Get the contents from the UIWebView (in the main thread)
NSString *data = [webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.textContent"];

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

// Parse the data here

dispatch_sync(dispatch_get_main_queue(), ^{

// Update the UI here

});
});
}

关于ios - webViewDidFinishLoad 阻塞主线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16520582/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com