0

我正在为 iPad 编写一个计算器,并试图找到一种方法来计算计算需要执行的时间。

目前我正在尝试一个简单的计算:NSLog(@"power is : %g", pow(number,2));

我想为这个计算播种 3000 个数字并将所需的时间存储到一个数组中。
我应该使用 NSTimer 来查找这个时间吗?

计算机计算时间出错。我想从结果中减去这个错误,以获得更精确的值。

我使用 CADisplayLink 是因为我可以启动和停止它,将 paused 设置为 false 和 true 而不是 NSTimer,因为我每次都必须启动一个 NStiemr 对象,这会耗费时间和内存。

到目前为止,我已经编写了以下代码,但它不起作用。

先感谢您

-(void)howMuchTimeForASquared
{
    xronoi=[[NSMutableArray alloc] init];
    sumTime=0;
    CADisplayLink *gameTimer = [CADisplayLink displayLinkWithTarget:self
                                            [gameTimer addToRunLoop:[NSRunLoop currentRunLoop]
                                                            forMode:NSDefaultRunLoopMode];
    if (xronos>3000) {
        NSLog(@"xronoi count %d",xronoi.count);
        gameTimer.invalidate;
    }
}

-(void) updateDisplay:(CADisplayLink*)sender
{
    srandom( time( NULL ) );
    int randomNumber=((random())%3000);
    xronos++;
    [self updateModelWithTime:sender.timestamp];
}

-(void) updateModelWithTime:(CFTimeInterval) timestamp{
    if (lastTime == 0.0) {
        lastTime = timestamp;
    } else {
        timeDelta = timestamp - lastTime;
        sumTime=sumTime+timeDelta;
        [xronoi addObject:[NSNumber numberWithDouble:timeDelta]];
        lastTime = timestamp;
    }
}
4

0 回答 0