gpt4 book ai didi

iphone - NSTimer 有时只触发?

转载 作者:行者123 更新时间:2023-11-29 13:46:49 25 4
gpt4 key购买 nike

我遇到了一个问题,我的计时器随机不工作。我可以在不更改任何代码的情况下真正停止应用程序并重建它。它有时有效,有时无效?当我说“有时”时,我指的是每个应用程序 session 。如果它启动,它将继续运行。但它并没有运行每个应用程序 session 。使用下面的两个代码块时,我看到了同样的事情。

//Code1:
//I tried this block of code after reading it might be related to how I am interacting with my UIElements while the timer is running in the background.
NSRunLoop *runloop = [NSRunLoop currentRunLoop];
syncWithServerTimer = [NSTimer timerWithTimeInterval:15 target:self selector:@selector(syncWithServer) userInfo:nil repeats:YES];
[runloop addTimer:syncWithServerTimer forMode:NSRunLoopCommonModes];
[runloop addTimer:syncWithServerTimer forMode:UITrackingRunLoopMode];

//Code2:
syncWithServerTimer = [[NSTimer scheduledTimerWithTimeInterval:15 target:self selector:@selector(syncWithServer) userInfo:nil repeats:YES] retain];

同样,我尝试了这两种方法,它们大部分时间都有效,但并非所有时间都有效。可能是什么问题?我没有过早地发布或失效。

最佳答案

所以我想最好在主线程上启动计时器!我现在每次这样做似乎都能奏效。

[self performSelectorOnMainThread:@selector(startTimer) withObject:nil waitUntilDone:NO];

关于iphone - NSTimer 有时只触发?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7036216/

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