Cocoaの日々情報局
iOS/OS X 開発者向け情報サイト。 技術・デザイン・マーケティングなどアプリ開発に関する様々な話題を扱う。
2012年3月1日木曜日
GCDを使ったスレッドセーフな初期化
インスタンスの遅延実行をスレッドセーフに行う為の考察。面白い。
次の4つの方法が紹介されている。
@synchronized
dispatch_semaphore_*
dispatch_once
dispatch_sync
dispatch_once はグローバル/スタティックな変数を使用する必要があるのでインスタンス単位で使えない。1番すっきりしているのは最後の dispatch_sync。
Threadsafe Lazy Property Initialization | Cocoanetics
0 件のコメント:
コメントを投稿
‹
›
ホーム
ウェブ バージョンを表示
0 件のコメント:
コメントを投稿