ソフトウェア開発者側から見てiOS 4の最も興味深い技術の一つはBlocksとGrand Central Dispatch (GCD) だと思う。マルチスレッド処理はソフトのユーザ側には便利な仕組みなのだけど、その反面、作り手側の負荷が少なくない。iOS 4より前のOSでは、NSThreadのような「機能が貧弱で役不足なもの」か,pthreadのような「高機能だけど使いこなすのが大変なもの」しか用意されていなかった。 iOS 4ではこのマルチスレッドをサポートするための仕組みが強化されており、BlocksとGCDの組み合わせを利用することで、既存のコードの変更を抑えたまま簡単にマルチスレッド対応にすることが可能だ。例えば、「通信で取得したデータをTableViewに表示する」という良く有るアプリケーションの構成において、GCD利用の有無を比較したコードの例が下記で説明されている。 通常、ス
![BlocksとGCDを学ぶ本「iOS4プログラミングブック」 - rabbit2goのブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/fb1da6b5be3e111dd200fd5e1d2267e6bbbc5cc3/height=288;version=1;width=512/https%3A%2F%2Fimages-fe.ssl-images-amazon.com%2Fimages%2FI%2F51uBscIjG8L._SL160_.jpg)