執行迴路RunLoop型別機制
RunLoop:執行迴路(迴環)。
NSRunLoop執行迴路的機制:官方文件API
OSX電腦作業系統/iOS移動端作業系統(作業系統:支援讀寫的系統型互動環境/某種語言的可執行檔案包(環境SDK解析))。系統型互動環境的SDK內容包裡面提供了2種物件類:NSRunLoop、CFRunLoopRef。物件類CFRunLoopRef核心基礎執行迴路引用類來源於CoreFoundation核心基礎 框架內,CFRunLoopRef類提供有純C語法函式事件API,所有這些API函式事件統統採用純C語法指令編碼都是執行緒安全(純C語法指令編碼執行緒安全性較高)。基於CFRunLoopRef核心基礎執行迴路引用類作進一步的封裝,封裝後得到NSRunLoop類公開提供新型的函式事件API(底層指令呈現出OC語法物件導向風格),所以NSRunLoop類下的函式事件API安全性較低。
備註:同等條件下封裝的次數越多封裝的層級越多,安全性逐步降低(安全性越低)。
函式/方法通過花括號"{}"組構建 實際執行例項域。
NSRunLoop型別 與執行緒的關係
NSRunLoop型別本身的花括號"{}"組執行例項域內主要呼叫dowhile()格式的迴圈指令,任意(RunLoop型別下的例項化物件)runLoop例項物件都各自管理著某個單獨執行緒(runLoop例項物件和對應的某個單獨執行緒互相繫結,彼此之間可視為一一對應的匹配關係),關係儲存在一個全域性的Dictionary裡邊,執行緒剛建立時沒有RunLoop,如果不主動獲取,是不會有的,RunLoop的建立發生在第一次獲取時,RunLoop的銷燬發生線上程結束,只能在一個執行緒的內部獲取它的RunLoop(主執行緒除外)主執行緒預設有個RunLoop.
相關文章
- Runloop-執行迴圈OOP
- JavaScript執行機制-node事件迴圈JavaScript事件
- 【執行機制】 JavaScript的事件迴圈機制總結 eventLoopJavaScript事件OOP
- Runloop 多執行緒OOP執行緒
- JavaScript 執行機制-瀏覽器事件迴圈JavaScript瀏覽器事件
- JavaScript執行機制JavaScript
- Javascript 執行機制JavaScript
- JavaScript執行緒機制與事件機制JavaScript執行緒事件
- 理解Reacg執行機制
- 比特幣執行機制比特幣
- Js執行機制圖JS
- 探索JavaScript執行機制JavaScript
- requestAnimationFrame 執行機制探索requestAnimationFrame
- 執行緒同步機制執行緒
- js的執行機制JS
- Javascript執行機制(setTimeout/Promise)JavaScriptPromise
- js執行機制淺析JS
- React的setState執行機制React
- js Event Loop 執行機制JSOOP
- 圖解JS執行機制圖解JS
- JS引擎的執行機制JS
- js執行機制詳解JS
- 淺聊java執行機制Java
- javascript執行機制:Event LoopJavaScriptOOP
- Java的執行機制分析!Java
- 小程式技術科普:執行機制&安全機制
- iOS 多執行緒:『RunLoop』詳盡總結iOS執行緒OOP
- Java中執行時型別識別RTTIJava型別
- java synchronize - 執行緒同步機制Java執行緒
- 【React深入】setState的執行機制React
- 執行緒鎖 -賣票機制執行緒
- 深入淺出JavaScript執行機制JavaScript
- Spring-Mybatis執行機制概括SpringMyBatis
- JavaScript執行機制:event-loopJavaScriptOOP
- JavaScript的程式碼執行機制JavaScript
- Nginx 與 PHP 的執行機制NginxPHP
- nextTick的原理及執行機制
- 淺談小程式執行機制