Timeline翻譯后的意思是時間軸,可以表示一個事件從開始到結束的時間節(jié)點。時間軸的概念能夠應用在很多地方,比如說微博的主頁就是一個時間軸。

Alamofire中Timeline的代碼很少,非常簡單。因此本篇文章中,我們不會把重點放到代碼的解讀上,我們通過追蹤Timeline的身影,來講講關于代碼設計方面的東東。

為什么要設計Timeline

很簡單,我需要知道一個請求過程中,每個關鍵時間點的值或者時間點與時間點之間的距離。這樣的一個需求不僅能夠用于程序的調試,而且能為別的設計提供必要的參數支持。

我們通過下邊的代碼進行打印:

print(response.timeline)

顯示的結果是:

Timeline: { "Latency": 0.092 secs, "Request Duration": 0.092 secs, "Serialization Duration": 0.458 secs, "Total Duration": 0.551 secs }

上邊的代碼提供的信息有:

  • Latency: 0.092 secs 延遲,它表示從請求開始到收到或者發(fā)送第一個字節(jié)的時間長度,這里把它理解成建立連接花費的時間

  • 網友評論