nsrunloop相关内容
在使用NSURLConnection和NSRunLoop时,我感到困惑. 我正在尝试使用NSURLConnection下载大文件,但是按预期无法正常工作(甚至没有调用单个委托方法). NSURL *url = [NSURL URLWithString:@"http://127.0.0.1:8080/"]; NSMutableURLRequest *request = [[[N
..
我试图理解RunLoops的概念.我已经阅读了有关RunLoops的Apple开发人员指南,并且在某种程度上我了解了RunLoops的概念.为了使我的概念更清晰,我编写了一个非常简单的代码,其中使用了RunLoops.该代码可以在下面看到. - (void)viewDidLoad { [super viewDidLoad]; thread = [[NSThread a
..
我有一个NSRunLoop对象,向其附加了计时器和流.效果很好.完全停止是另一个故事. 我使用[runLoop run]运行循环. 如果我尝试使用CRunLoopStop([[NSRunLoop currentRunLoop] getCFRunLoop])停止循环,则循环不会停止.如果我改用CRunLoopRun()开始循环,那么它将起作用.我还确保了调用是在正确的线程(运行我的自定义
..
我正在尝试先测试一个概念验证的命令行应用程序,然后再将其集成到更大的应用程序中.我想做的是使用NSURLSession使用此示例下载一些数据.但是,如果我使用一个简单的OS X命令行应用程序中给出的示例,则该应用程序将在检索数据之前退出. 如何使用NSURLSession从独立的命令行应用程序下载数据?我所读的是使用 NSRunLoop 但是,我还没有在Swift中找到一个清晰的示例,因此,
..
我有一个计时器,一旦它响起,它就会运行来重新启动警报. alarm = NSTimer.scheduledTimerWithTimeInterval( 60 * minutesConstant + secondsConstant, target:self, selector: Selector("endSession"), userInfo: nil,
..
请查看以下代码: @interface myObject:NSObject - (void)功能:(ID)PARAM; @end @implementation myObject - (void)function:(id)param { NSLog( @“之前”); [[NSRunLoop currentRunLoop] runUntilDat
..
请考虑以下代码: 在第一个代码中,我调用一个创建动画的函数。我以一定的时间间隔执行此操作: start:; [self animationMethod]; [[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:3]]; // sleep(3); 转到开始;
..
如果在iOS中发生某些事件之前如何在NSThread内等待? 例如,我们创建了一个NSThread并启动了一个线程循环。在线程循环内部,有条件检查消息队列是否有任何消息。如果有消息,那么它将调用相应的方法来执行某些操作,否则它应该等到消息队列填充新消息。 是否存在是否有任何API或方法可以等到某个事件发生? 例如 NSThread * thread = [NSThread
..
我需要在iOS应用程序中定期轮询来自服务器的数据。我需要在一个线程中每10秒执行一次,以保持UI可用。当用户登录时将触发此函数。我正在考虑使用 NSRunLoop 和 NSTimer 来实现此功能,也许可以使用 AFNetworking 来获取JSON数据。 这是正确的做法吗?是否应该使用GCD完成? 解决方案 可能必须在主线程上完成的唯一部分是请求本身。确定您需要请求并形成该请求可
..
以下是我所知道的事情。理解: 全局队列是一个并发队列,可以将任务分派给多个线程。执行任务的顺序无法保证。例如: dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),{ for(int i; i
..
我正在做一个需要计时器的应用程序。我尝试过 NSTimer ,但 NSTimer 总是丢失或延迟。 iOS SDK中是否有可以准确记录时间的类。精度在20ms到40ms之间是可以的。我希望能够在固定的时间间隔内更改图像。 NSTimer * timer1 = [NSTimer scheduledTimerWithTimeInterval:.04f target:self selector:
..
我有一个实现自定义 UIControl 的库,其方法是在调用时触发 .valueChanged 事件。我想测试该行为的方法。 我的自定义控件: class MyControl:UIControl { func fire(){ sendActions(for:.valueChanged) } } 测试: import XCTest class
..
我想知道是否有人可以解释为什么调度回主队列并创建重复的 NSTimer 我不得不将它添加到RUN LOOP因为太火了?即使使用 performselectorOnMainThread ,我仍然需要将它添加到RUN LOOP才能触发它。 下面是我的问题的一个例子: #define queue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORI
..
如何让NSURLConnection从不同的线程而不是主线程调用它的委托方法。我正在尝试使用scheduleInRunLoop:forMode:但似乎没有做我想要的。 我必须下载一个大文件并且它会中断主线程如此频繁,以至于正在发生的一些渲染开始变得不稳定。 NSURLRequest * request = [NSURLRequest requestWithURL:url]; NS
..
通常最好拨打 - [NSRunLoop runUntilDate:] ?它似乎没有任何问题,但它让我很紧张,告诉运行循环在运行循环内运行。 更多信息: 我现在有一个从REST服务获取数据的项目。需要获得的一个关键信息是具有有效数据的日期范围。这只是一小部分数据,只需要获取一次,所以我决定处理它的最佳方法是让属性下载数据,如果局部变量是 nil 。我正在使用 ASIHTTPRequest
..
iOS上的操作顺序是什么? 我正在考虑时间问题 setNeedsLayout 和 layoutSubviews setNeedsDisplay 和 drawRect 触摸识别 [NSTimer scheduledTimerWithTimeInterval:0.000001 tar(...)] dispatch_async(dispatch_get_main_queue(),^
..
亲爱的stackoverflow人, 就像上次一样,我特此提出一个我最近偶然发现的问题。我希望那里有人可以解释一下。 每当我尝试下载后面的大文件时UIScrollView , MPMapView 等等,一触摸iPhone屏幕,下载过程就会停止。值得庆幸的是,Jörn的精彩博客文章建议一个替代选项,使用 NSRunLoopCommonModes 进行连接。 这让我看看两种模式的细节
..
我试图在应用内建立FTP连接。我想上传几个文件到一个FTP服务器,所有文件在一个目录中。所以起初我想创建远程目录。 - (void)createRemoteDir { NSURL * destinationDirURL = [NSURL URLWithString:uploadDir]; CFWriteStreamRef writeStreamRef = CFWriteSt
..
我可以通过我的窗口控件的keyDown:方法成功地对键盘事件作出反应。 执行鼠标拖动时出现问题: 键盘事件似乎被延迟,只会在鼠标上起火。要清楚,我的意思是: •在你的窗口控制器的keyDown:方法中放置一个日志语句 •启动您的应用程序,执行一些拖动操作(例如NSSlider) •同时保持拖动,按任意键:无任何日志到控制台。 •释放拖动:日志出现,yay ...
..
当我 Logger * logger = [Logger new]; NSURL * url = [NSURL URLWithString:@“http://www.google.com”]; NSURLRequest * request = [NSURLRequest requestWithURL:url]; __unused NSURLConnection * co
..