2012-04-15 36 views

回答

3

這絕對是封鎖。因爲消息被以純C.實際翻譯

[myObj myMethod]; 

變得

objc_msgSend(myObj, @selector(myMethod)); 

在運行時。

但是,一些方法被實現爲異步。請參閱-[NSTask launch],-[NSThread start]

+0

+1,但對於這些異步方法,實際方法是同步運行的。這只是該方法所做的工作是異步啓動和執行的。無法使消息發送異步。 – wbyoung 2012-04-15 14:01:22

+0

謝謝然後我的下一個問題http://stackoverflow.com/questions/10163489/how-to-send-message-asynchronously-in-objective-c排除你提到的具體方法。 – user310291 2012-04-15 15:44:40

2

不,當您讀取objective-c中的「發送消息」時,您必須將其視爲調用方法。 所以,發送消息是調用一個方法,一些是同步的,一些是異步的,你必須檢查文檔才能看到。