YYDispatchQueuePool
在GCD(Grand Central Dispatch)中,dispatch_get_global_queue用于获取全局并发队列。全局并发队列在应用程序的生命周期内都存在,它们由系统管理并且共享给所有应用程序使用。
全局并发队列实际上只有三个(在iOS 8之前是四个),分别对应不同的优先级:高、默认、低(以及在iOS 8之前的后台)。当你使用dispatch_get_global_queue函数获取队列时,实际上是在获取这三个全局队列之一。
因此,如果突发的全局过度使用dispatch_get_global_queue,就可能会有很多任务都在这三个全局队列上执行,可能会内部会导致创建过多的线程(每个队列 64 个)创建调度的开销等相反可能会浪费 CPU 算力。
在 YYText库YYTextAsyncLayer文件中,负责渲染的 queue 运行在这样的一段代码创建的 queue 中:
1234567891011121314151617181920212223242526/// Global display queue, used for content rendering.stat ...
Jenkins打包支持根据git日志生成changelog
Jenkins 打包最后一步是通知到钉钉或者企微群,会附带changlog。下列脚本只是作为调用 fastlane 的入口,fastlane 核心方法是 build_app以及 fir 或者 pgy plugin 的调用。
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859#!/bin/bash -lexport LANG=en_US.UTF-8export LANGUAGE=en_US.UTF-8export LC_ALL=en_US.UTF-8# ====================== 自定义字段 =========================# 标识name="xxx_iOS"# 仓库分支名称branch=${GIT_BRANCH}# 构建类型 1=Debug测试包, 2=Release测试包archiveType=2echo -e ${ARCHIVE_T ...
序列图绘制tips
https://www.websequencediagrams.com/ 这个网站可以很方便的生成序列图
1234567891011121314151617181920browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/notesserver-->browser: HTML-codebrowser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.cssserver-->browser: main.cssbrowser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.jsserver-->browser: main.jsnote over browser:browser starts executing js-codethat requests JSON data from serverend notebro ...