同步工具
鎖(locks)都伪,條件(condition)渐尿,原子操作(atomic)
線程間通信
Direct messaging: Cocoa應(yīng)用可以直接perform某個(gè)selector在指定線程
全局變量铐拐,共享內(nèi)存和對(duì)象丢胚。
Conditions:一種特殊類型的鎖
Run loop sources:簡單的來說销钝,run loop是用來在線程上管理時(shí)間異步到達(dá)的工具。run loop能為線程監(jiān)聽一個(gè)或多個(gè)事件源(event sources)酱固。run loop能把線程置于休眠狀態(tài)械念,而當(dāng)事件到達(dá)時(shí),系統(tǒng)能喚醒線程并把事件分發(fā)給run loop媒怯,而后run loop能將事件分發(fā)給特定的handler订讼。
Ports and sockets:也使用run loop髓窜,不同之處在于可以進(jìn)行多進(jìn)程通信
Message queues:歷史遺物扇苞,一種多進(jìn)程通信的玩意,才用FIFO的信息隊(duì)列寄纵,但是有效率問題鳖敷,
Cocoa distributed objects:好高級(jí)的技術(shù),可以在call不同cocoa應(yīng)用的object程拭,甚至跨越網(wǎng)絡(luò)的不同計(jì)算機(jī)上的cocoa應(yīng)用定踱。
轉(zhuǎn)載:http://gracelancy.com/blog/2013/05/02/OSX-iOS-Threading-Programming/