+(schoolManger *)sharedInstance{ schoolManager *inst=nil; static dispatch_once_t onceToken; dispatch_once(&onceToken,^{ inst=[[schoolManager alloc] init]; }); return inst;}void diapatch_once(dispatch_once_t *predicate,dispatch_once_t block);其中第一个参数检查后面第二个参数所代表的代码块是否被调用的谓词。该函数中的代码块只会执行一次,而且线程安全。创建单例后,可以通过以下方式获取唯一实例schoolManager *schoolManager=[SchoolManager sharedInstance];