美文网首页
iOS延迟执行时间的判断

iOS延迟执行时间的判断

作者: 独孤流 | 来源:发表于2024-06-22 01:56 被阅读0次

前言

在开发过程中,经常有些东西需要延迟执行,但是容易把延迟执行的写法理解有误,特记录

extension Date {
    static func systemMilliseconds_int64() -> Int64 {
        return Int64(Date().timeIntervalSince1970*1000)
    }
}

// 延迟时间与设置的延迟时间会有轻微的差异,大体是没问题的

let now0 = Date.systemMilliseconds_int64()
print("==**>>--AA-->>: now0:\(now0)")
// ==**>>--AA-->>: now0:1719038441921

// .now()+数字,数字代表秒数,可以写整数,也可以写小数,表示延迟xxx秒后执行
DispatchQueue.global().asyncAfter(deadline: .now() + 0.5 , execute: {
    let now1 = Date.systemMilliseconds_int64()
    print("==**>>--BB1-->>: now0:\(now0) now1:\(now1) dis:\(now1-now0)")
    // ==**>>--BB1-->>: now0:1719038441921 now1:1719038442422 dis:501
})
DispatchQueue.global().asyncAfter(deadline: .now() + 1, execute: {
    let now1 = Date.systemMilliseconds_int64()
    print("==**>>--BB2-->>: now0:\(now0) now1:\(now1) dis:\(now1-now0)")
    // ==**>>--BB2-->>: now0:1719038441921 now1:1719038442971 dis:1050
})

// .now() + .seconds(xxx), xxx必须是整数,.seconds(xxx)就是延迟xxx秒执行
DispatchQueue.global().asyncAfter(deadline: .now() + .seconds(5) , execute: {
    let now2 = Date.systemMilliseconds_int64()
    print("==**>>--CC-->>: now0:\(now0) now2:\(now2) dis:\(now2-now0)")
    // ==**>>--CC-->>: now0:1719038441921 now2:1719038447171 dis:5250
})

// .now() + .milliseconds(xxx), xxx必须是整数,.milliseconds(xxx)就是延迟xxx毫秒执行
DispatchQueue.global().asyncAfter(deadline: .now() + .milliseconds(300) , execute: {
    let now3 = Date.systemMilliseconds_int64()
    print("==**>>--DD-->>: now0:\(now0) now3:\(now3) dis:\(now3-now0)")
    // ==**>>--DD-->>: now0:1719038441921 now3:1719038442224 dis:303
})
// 还有微妙、纳秒,很少使用,就不列出来了

相关文章

  • view动画

    [UIViewanimateWithDuration:2//执行时间delay:0//延迟时间usingSprin...

  • 延迟判断

    也许,我们眼前看到的一瞬间的事实并非是真实,需要静静地耐心地看完整个事情,才可以对这件事情作判断,也才有资格说出自...

  • 延迟判断

    今天学了一个新词“延迟判断”。《吴伯凡·认知方法论》课程里有这样一句话:“你看这个世界时截取的时段不一样,...

  • 【iOS 开发】延迟执行方法小总结

    【iOS 开发】延迟执行方法小总结 【iOS 开发】延迟执行方法小总结

  • 延迟判断与拖延

    延迟判断与拖延 延迟判断和拖延,在表现形式上相近,两者都是等一等,不要急于行动。 延迟判断是告诉人们,不要急于下判...

  • ios开发--ios10及其之后拨打系统电话,弹框出现延迟的解决

    ios开发--ios10及其之后拨打系统电话,弹框出现延迟的解决办法 ios10 拨打系统电话,弹框延迟2s左右出...

  • uni小程序地图moveAlong 持续真机ios无效

    轨迹回放map的moveLong的success回调在ios和安卓的执行时间不同,导致真机ios上轨迹回放失效。在...

  • JDK Timer 实现原理分析

    说明 本文分析的是 JDK 7 Timer 基本用法 输出: 主要能够指定定时任务的初始延迟、间隔执行时间。 实现...

  • iOS 各种判断

    iOS 判断数字 iOS 判断邮箱 空字符串 电话号码

  • iOS面试题总结整理(附答案-持续更新)

    iOS面试题总结整理(附答案) 多线程的实现方式;iOS中实现多线程的方案有4种 延迟执行的几种方式;延迟1秒执行...

网友评论

      本文标题:iOS延迟执行时间的判断

      本文链接:https://www.haomeiwen.com/subject/utpkcjtx.html