• 最近更新
  • 全部文章
  • 关于
  • 搜索
  • ⦿1meal (1)
  • ⦿2020 (1)
  • ⦿2021 (1)
  • ⦿2022 (1)
  • ⦿SPM (1)
  • ⦿access-level (1)
  • ⦿account (1)
  • ⦿airpods (1)
  • ⦿algorithm (2)
  • ⦿animation (1)
  • ⦿annual-review (3)
  • ⦿app-store (1)
  • ⦿apple (7)
  • ⦿applescript (1)
  • ⦿architecture (1)
  • ⦿ascii (1)
  • ⦿async (1)
  • ⦿automator (2)
  • ⦿bank (1)
  • ⦿basic (1)
  • ⦿big-endian (1)
  • ⦿bluetooth (1)
  • ⦿book (1)
  • ⦿broken (1)
  • ⦿buffer (1)
  • ⦿byte-order (1)
  • ⦿c/cpp (2)
  • ⦿certificate (3)
  • ⦿character (2)
  • ⦿charles (1)
  • ⦿cheatsheet (1)
  • ⦿cli (1)
  • ⦿closure (1)
  • ⦿cocoapods (4)
  • ⦿code-guideline (1)
  • ⦿collection (1)
  • ⦿collectionview (1)
  • ⦿compile (1)
  • ⦿comprehension (1)
  • ⦿constraints (1)
  • ⦿crash (1)
  • ⦿dark (1)
  • ⦿data-structure (1)
  • ⦿debug (1)
  • ⦿declaration (1)
  • ⦿definition (1)
  • ⦿design-pattern (2)
  • ⦿docker (1)
  • ⦿dye (1)
  • ⦿dynamic-library (1)
  • ⦿easyconnect (1)
  • ⦿encode (1)
  • ⦿endian (1)
  • ⦿example (1)
  • ⦿feature (1)
  • ⦿filevault (1)
  • ⦿finance (1)
  • ⦿first (1)
  • ⦿flexbox (1)
  • ⦿flexlayout (1)
  • ⦿flutter (1)
  • ⦿framework (2)
  • ⦿gcd (1)
  • ⦿git (6)
  • ⦿google (1)
  • ⦿graphic (1)
  • ⦿gray-theme (1)
  • ⦿hash-function (1)
  • ⦿hash-map (1)
  • ⦿header (2)
  • ⦿hexo (1)
  • ⦿hhkb (2)
  • ⦿hobby (1)
  • ⦿homebrew (1)
  • ⦿https (1)
  • ⦿iOS (1)
  • ⦿ios (29)
  • ⦿ios16 (1)
  • ⦿ip (1)
  • ⦿ipad (2)
  • ⦿ivim (1)
  • ⦿keyboard (3)
  • ⦿keycode (1)
  • ⦿layout (1)
  • ⦿linux (1)
  • ⦿little-endian (1)
  • ⦿lldb (1)
  • ⦿llvm (1)
  • ⦿log (1)
  • ⦿loopback (1)
  • ⦿lsd (1)
  • ⦿mac (8)
  • ⦿maintenance (1)
  • ⦿markdown (1)
  • ⦿maven (1)
  • ⦿memory-management (1)
  • ⦿merge-tool (1)
  • ⦿multi-thred (1)
  • ⦿network (4)
  • ⦿nexus (1)
  • ⦿notification (2)
  • ⦿path (1)
  • ⦿peanuts (1)
  • ⦿port (1)
  • ⦿precision-loss (1)
  • ⦿present (1)
  • ⦿principle (1)
  • ⦿privacy-policy (1)
  • ⦿proxy (1)
  • ⦿push (1)
  • ⦿python (1)
  • ⦿read-order (1)
  • ⦿reference-type (1)
  • ⦿regex (2)
  • ⦿render (1)
  • ⦿request (1)
  • ⦿review (5)
  • ⦿rime (1)
  • ⦿rotate (1)
  • ⦿runloop (1)
  • ⦿rxswift (1)
  • ⦿search (1)
  • ⦿server (2)
  • ⦿shell (2)
  • ⦿shorcut (1)
  • ⦿shortcut (1)
  • ⦿solution (1)
  • ⦿spm (1)
  • ⦿ssh (1)
  • ⦿ssl (1)
  • ⦿static-library (1)
  • ⦿stream (1)
  • ⦿string (1)
  • ⦿submodule (1)
  • ⦿swift (9)
  • ⦿swift5 (1)
  • ⦿tcp/ip (1)
  • ⦿terminal (7)
  • ⦿theme (2)
  • ⦿timer (1)
  • ⦿tips (2)
  • ⦿tmux (1)
  • ⦿tool (21)
  • ⦿tools (4)
  • ⦿track-code (1)
  • ⦿travel (1)
  • ⦿type-transform (1)
  • ⦿ui (2)
  • ⦿uikit (4)
  • ⦿uiscrollview (1)
  • ⦿uitableview (2)
  • ⦿uml (1)
  • ⦿universal-link (1)
  • ⦿url-scheme (1)
  • ⦿value-type (1)
  • ⦿vanilla (1)
  • ⦿variables (1)
  • ⦿viewcontroller (1)
  • ⦿vim (11)
  • ⦿vscode (1)
  • ⦿website (1)
  • ⦿websocket (1)
  • ⦿wood (1)
  • ⦿xcframework (1)
  • ⦿xcode (3)
  • ⦿zhangjiajie (1)
  • iOS 之 Runloop

    • ⦿ios
    • ⦿runloop
    • 2019-12-02
    • 👓 5 min

    runloop 是一个圆环, 应用在启动时即开启一个 runloop, runloop 控制着整个 App 的生命周期.

    用户点击屏幕时, 设备传递信号给 App 的 runloop, runloop 即将被唤醒 -> runloop 被唤醒 -> 开始检查事件 -> 将事件添加到队列中 -> 运行事件 -> 移除事件 -> runloop 即将休眠 -> App 进入休眠状态.

    联想: 图形的显示极大地依赖于 runloop, 其在 runloop 中的即将休眠 beforeWaiting 和退出 exit 两个状态中注册了检查方法, 这个检查方法在 runloop 进入到这两个状态时会遍历所有需要更新的视图 (需要更新的图形标记 setNeedDisplay), 然后对需要更新的图形执行图形绘制的相关方法 display

Copyright © Hanley Lee 2024 豫ICP备20000113号

Generated using Publish