我們知道RunLoop在不斷的切換Mode處理其中的Source0,Source1,Observers,Timers,如果沒有相關(guān)的觸發(fā)就會(huì)休眠,進(jìn)行線程阻塞,等到有相關(guān)的觸...
開胃面試題 1.講講 RunLoop,項(xiàng)目中有用到嗎?2.RunLoop內(nèi)部實(shí)現(xiàn)邏輯?2.Runloop和線程的關(guān)系?3.timer 與 Runloop 的關(guān)系?4.程序中添...
前言 runtime的資料網(wǎng)上有很多了,部分有些晦澀難懂,我通過自己的學(xué)習(xí)方法總結(jié)一遍,主要講一些常用的方法功能,以實(shí)用為主,我覺得用到印象才是最深刻的,并且最后兩個(gè)demo...
說在前面:許久沒更新,最近整理就文件的時(shí)候,突然翻到兩年前換工作時(shí)整理的思維導(dǎo)圖,包含了原理八股文,網(wǎng)絡(luò),算法,以及架構(gòu),重構(gòu)解決方案等,基本上面試必問的一些項(xiàng)目以及原理都包...
環(huán)境 Xcode 12.4, Swift:5.0 概述:該文檔主要介紹OC和Swift混合開發(fā)相互調(diào)用,包括3大類情況和12種具體情形。 三大類情況: 1. 主工程內(nèi)的混合...
一、基礎(chǔ)概念,底層原理 1、繪圖框架:圖/文/動(dòng)畫/游戲 1、UIKit:最常用的視圖框架,封裝度最高,都是OC對象。2、CoreText:繪字3、CoreGraphics:...
*推流,就是將采集到的音頻,視頻數(shù)據(jù)通過流媒體協(xié)議發(fā)送到流媒體服務(wù)器。*推流前的工作:采集,處理,編碼壓縮*推流中做的工作: 封裝,上傳 但還是推薦用 LFLiveKit,而...
推流,就是將采集到的音頻,視頻數(shù)據(jù)通過流媒體協(xié)議發(fā)送到流媒體服務(wù)器。 推流前的工作:采集,處理,編碼壓縮 推流中做的工作: 封裝,上傳 推流前的工作:采集,處理,編碼壓縮 推...
前言 在看這篇之前,如果您還不了解直播原理,請查看這篇文章如何快速的開發(fā)一個(gè)完整的iOS直播app(原理篇) 開發(fā)一款直播app,美顏功能是很重要的,如果沒有美顏功能,可能分...
目錄 【如何快速的開發(fā)一個(gè)完整的iOS直播app】(原理篇) 【如何快速的開發(fā)一個(gè)完整的iOS直播app】(播放篇) 【如何快速的開發(fā)一個(gè)完整的iOS直播app】(采集篇) ...
高階函數(shù)的定義: 在 Wikipedia 中,是這么定義高階函數(shù)(higher-order function)的,如果一個(gè)函數(shù): 接收一個(gè)或多個(gè)函數(shù)當(dāng)作參數(shù) 把一個(gè)函數(shù)當(dāng)作返...
一、App的生命周期 當(dāng)我們打開 APP 時(shí),程序一般都是從 main 函數(shù)開始運(yùn)行的,那么我們先來看下 Xcode 自動(dòng)生成的 main.m 文件: 這個(gè)默認(rèn)的 iOS 程...
前言: 最近公司項(xiàng)目不怎么忙, 閑暇時(shí)間把iOS 在面試中可能會(huì)遇到的問題整理了一番, 一部分題目是自己面試遇到的,一部分題目則是網(wǎng)上收錄的, 方便自己鞏固復(fù)習(xí), 也分享...
序 曾幾何時(shí),特別喜歡看、收集別人分享的面試真題,直到看到圖中這個(gè)學(xué)習(xí)方法,若有所思。在百度三面被掛掉之后,沉下心來,整理構(gòu)建自己的開發(fā)體系,方便以后查看。 有些還沒有寫完后...