在昨天的学习视频中,正好案例中用到了.就随机给大家讲了一个面试题.以及遇到技术问题从哪些角度去回答.嗯.一边讲解,一边写了些小笔记.希望能给最近面试的同学一些帮助.

在分享这篇面试文章的小编先分享自己建的一个“iOS程序员开发者的群”“638302184”每天都会有开发者分享案例一起探讨工作中的问题,群里还会分享阿里面试题及各大BAT面试题。欢迎进群

1.从框架的角度

NSDate 属于Foundation
CFAbsoluteTimeGetCurrent 属于 Core Foundation
CACurrentMediaTime 属于 QuartzCore

2.本质区别

NSDate 或 CFAbsoluteTimeGetCurrent 返回的系统时钟时间将会从网络时钟同步.
从时钟偏移量的角度 mach_absolute_time() 和 CACurrentMediaTime 基于内建时钟.能够更精确的测试时间,并且不会根据外部的时间变化而变化.(例如,时区变化\夏时制),它和系统的upTime有关.系统重启后,CACurrentMediaTime 也会重新设置.

3.常用用法

NSDate \CFAbsoluteTimeGetCurrent 常用于日常时间,时间戳表示,与服务器之间的数据交互.
CFAbsoluteTimeGetCurrent 相当于 [NSDate date]timeIntervalSinceReferenceDate];
CACurrentMediaTime 常用测试代码效率

4.项目使用场景

分析:
在购物车点击"+"和"-"时.如果说立即进行服务器同步的话,代价是非常高!所以会采用"延时提交"的方法.

思路:
连续点击的时候,不提交服务器.点击停止时,进行同步.

连续点击如何判断了????

采用的是判断2次点击的时间差,如果时间差小于一定的数值(自己根据项目需求判定).那么即可判断是连续点击的操作.

面试题-NSDate\CFAbsoluteTimeGetCurrent\CACurrentMediaTime的区别的更多相关文章

  1. MySQL数据库 crud语句 ifnull() 创建新账户 备份数据库 一对多关系 多对多(中间表) 外键约束 自关联 子查询注意事项 DML DDL DQL mysql面试题 truncate与delete的区别

    DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言 DDL ...

  2. iOS ----------NSDate 、CFAbsoluteTimeGetCurrent、CACurrentMediaTime 的区别

    框架层: NSDate 属于Foundation CFAbsoluteTimeGetCurrent() 属于 CoreFoundatio CACurrentMediaTime() 属于 QuartzC ...

  3. 面试题·HashMap和Hashtable的区别(转载再整理)

    原文链接: Javarevisited 翻译: ImportNew.com- 唐小娟 译文链接: http://www.importnew.com/7010.html HashMap和Hashtabl ...

  4. java常见面试题03-String,StringBuffer,StringBuilder的区别

    面试题   A:String,StringBuffer,StringBuilder的区别 1:String 内容不可变,StringBuffer.StringBudiler可变  2:StringBu ...

  5. JAVA面试题 StringBuffer和StringBuilder的区别,从源码角度分析?

    面试官Q1:请问StringBuffer和StringBuilder有什么区别? 这是一个老生常谈的话题,笔者前几年每次面试都会被问到,作为基础面试题,被问到的概率百分之八九十.下面我们从面试需要答到 ...

  6. 夯实Java基础系列6:一文搞懂抽象类和接口,从基础到面试题,揭秘其本质区别!

    目录 抽象类介绍 为什么要用抽象类 一个抽象类小故事 一个抽象类小游戏 接口介绍 接口与类相似点: 接口与类的区别: 接口特性 抽象类和接口的区别 接口的使用: 接口最佳实践:设计模式中的工厂模式 接 ...

  7. [Java网络安全系列面试题] GET 和 POST 的区别在哪里?

    一. 概述 本文的内容源自其他博客的总结,属于笔者的读书笔记,结构如下: HTTP 的请求报文 GET 方法的特点 POST 方法的特点 GET 和 POST 的区别 二. HTTP 的请求报文 首先 ...

  8. 007面试题__==和equals的区别

    常见面试题03: 问:==和equals的区别 1)对于基本类型而言,比较的是数值是否相等 对于引用类型而言,比较的是内存地址是否相等 2)equals:比较的是两个对象的内容是否相等

  9. java面试题——HashMap和Hashtable 的区别

    一.HashMap 和Hashtable 的区别 我们先看2个类的定义 public class Hashtable extends Dictionary implements Map, Clonea ...

随机推荐

  1. elasticsearch 6 在 centos 6 上的安装问题

    ERROR: bootstrap checks failed max file descriptors [4096] for elasticsearch process likely too low, ...

  2. 微信小程序Md5加密(utf-8汉字无影响)

    微信小程序不让使用第三方jqMD5 只好改原生js咯 废话不多说直接贴代码 其实就是将原生function调用改为 module.exports = md5; 文中 红色标注 使用方法 将md5.js ...

  3. js中的各种“位置”——“top、clientTop、scrollTop、offsetTop……”,你知道多少

    当要做一些与位置相关的插件或效果的时候,像top.clientTop.scrollTop.offsetTop.scrollHeight.clientHeight.offsetParent...看到这么 ...

  4. angular4升级angular5问题记录之No NgModule metadata found for 'AppModule'

    在将项目从angular4升级到angular5的过程中,出现No NgModule metadata found for 'AppModule'问题,网上查找答案将app.module.ts进行再次 ...

  5. HDU - 3038 种类并查集

    思路:种类并查集的每个节点应该保存它的父节点以及他和父节点之间的关系.假设root表示根结点,sum[i-1]表示i到根结点的和,那么sum[j-1] - sum[i]可以得到区间[j, i]的和.那 ...

  6. python爬虫之基本知识

    随着数据的海量增长,我们需要在互联网上选取所需要的数据进行自己研究的分析和实验.这就用到了爬虫这一技术,下面就跟着小编一起初遇python爬虫! 一.请求-响应 在利用python语言实现爬虫时,主要 ...

  7. nginx的环境配置的问题

    在安装好nginx之后,运行nginx,报错: nginx dyld: Library not loaded: /usr/local/lib/libpcre.1.dylib Referenced fr ...

  8. 微信Token小识

    在调用自定义菜单接口的时候,调用接口 https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN返回: " ...

  9. hive上mysql元数据库配置

    hive调试信息显示模式: ./hive -hiveconf hive.root.logger=DEBUG,console 非常有用. 默认情况下,Hive元数据保存在内嵌的 Derby 数据库中,只 ...

  10. Windows 7下阻止系统关机

    从Vista开始,想阻止系统关机就开始变麻烦了,不能只拦截WM_QUERYENDSESSION了,操作系统只给一个应用程序两秒钟的时间去保存自己的东西,两秒钟之后,不管做完了没有,Game Over! ...