線程的基本信息

  • 空間

主線程??臻g大小為 1M = 1024KB 無法修改(最大值)
子線程默認(rèn)棧控件為 512kb (最大值)
并且,一開始創(chuàng)建線程的時候空間有可能很小,隨著使用而增加,
主線程的棧實際使用空間 <= 1024KB
子線程的棧實際使用空間 <= 512KB
線程啟動前,stackd空間大小可以被改變
size 分配內(nèi)存的大小單位是1KB,線程創(chuàng)建在棧上,stack的最小值是16kb,而且大小必須是4的倍數(shù) 16 20 24 28 32 36 40kb 。。。

  • 時間

時間消耗:(1毫秒 = 1/1000 秒)
創(chuàng)建:4-5毫秒
啟動:5-100毫秒 平均 29毫秒
總結(jié):開銷較大
原因:上下文切換帶來的開銷(CPU在某個時間點(diǎn)只能處理一個線程里的一個事情,如果處理另一個線程,需要上下文切換)

-(NSThread *)creatThreadWithTarget:(id)target selector:(SEL)selector object:(id)argument stackSize:(NSUInteger)size{

    if (size % 4096 != 0) {
        return nil;
    }
    
    NSThread *t = [[NSThread alloc] initWithTarget:target selector:selector object:argument];
    t.stackSize = size;
    return t;
    
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容