Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/110.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
xamarin ios performfetch将运行多长时间?_Ios_Xamarin_Xamarin.ios - Fatal编程技术网

xamarin ios performfetch将运行多长时间?

xamarin ios performfetch将运行多长时间?,ios,xamarin,xamarin.ios,Ios,Xamarin,Xamarin.ios,xamarin ios performfetch将运行多长时间? 我正在运行一个for循环来测试performfetch运行多长时间,它只运行15秒。有官方的时间限制吗 这是我的密码 public override void PerformFetch(UIApplication application, Action<UIBackgroundFetchResult> completionHandler) { for (int i = 0; i &

xamarin ios performfetch将运行多长时间? 我正在运行一个for循环来测试performfetch运行多长时间,它只运行15秒。有官方的时间限制吗

这是我的密码

 public override void PerformFetch(UIApplication application, Action<UIBackgroundFetchResult> completionHandler)
{


                for (int i = 0; i < 999999; i++)
                {
                    Debug.WriteLine(string.Format("{0}:{1}", "i", i));
                }
                completionHandler(UIBackgroundFetchResult.NewData);
    }
public override void PerformFetch(UIApplication应用程序,Action completionHandler)
{
对于(int i=0;i<999999;i++)
{
WriteLine(string.Format(“{0}:{1}”,“i”,i));
}
completionHandler(UIBackgroundFetchResult.NewData);
}

30秒

有关performFetchWithCompletionHandler:

调用此方法时,您的应用程序最多有30秒的挂钟时间来执行下载操作并调用指定的完成处理程序块。实际上,您的应用程序应该在下载所需数据后尽快调用完成处理程序块。如果您没有及时调用完成处理程序,您的应用程序将被终止。更重要的是,系统使用经过的时间来计算应用程序后台下载的功耗和数据成本。如果你的应用程序需要很长时间来调用完成处理程序,那么将来获取数据的机会可能会减少


好的,所以即使我将代码包装在BeginBackgroundTask和EndBackgroundTask中,我也有30秒的时间?@JoseManuelOjeda是的,
PerformFetch
应该很快,如果您无法在中调用completionHandler,请获取一些新数据并调用completionHandler