组合一:同步函数 + 自创串行队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_queue_create("queueName", NULL); dispatch_sync(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-09 14:26:53.868117+0800 OCTestLine[26738:2119182] >>>>>>>>>111 2021-08-09 14:26:53.868240+0800 OCTestLine[26738:2119182] >>>>>>>>>666 2021-08-09 14:26:53.868283+0800 OCTestLine[26738:2119182] >>>>>>>>>777 2021-08-09 14:26:53.868315+0800 OCTestLine[26738:2119182] >>>>>>>>>888 2021-08-09 14:26:53.868344+0800 OCTestLine[26738:2119182] >>>>>>>>>999 2021-08-09 14:26:53.868455+0800 OCTestLine[26738:2119182] >>>>>>>>>222 2021-08-09 14:26:53.868490+0800 OCTestLine[26738:2119182] >>>>>>>>>333 2021-08-09 14:26:53.868509+0800 OCTestLine[26738:2119182] >>>>>>>>>444 2021-08-09 14:26:53.868526+0800 OCTestLine[26738:2119182] >>>>>>>>>555 Program ended with exit code: 0
组合二:同步函数 + 主队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_get_main_queue(); dispatch_sync(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-09 14:28:03.933092+0800 OCTestLine[26754:2120067] >>>>>>>>>111 (lldb)
组合三:同步函数 + 全局并发队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_sync(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-09 14:29:20.474137+0800 OCTestLine[26791:2121857] >>>>>>>>>111 2021-08-09 14:29:20.474189+0800 OCTestLine[26791:2121857] >>>>>>>>>666 2021-08-09 14:29:20.474227+0800 OCTestLine[26791:2121857] >>>>>>>>>777 2021-08-09 14:29:20.474263+0800 OCTestLine[26791:2121857] >>>>>>>>>888 2021-08-09 14:29:20.474291+0800 OCTestLine[26791:2121857] >>>>>>>>>999 2021-08-09 14:29:20.474333+0800 OCTestLine[26791:2121857] >>>>>>>>>222 2021-08-09 14:29:20.474356+0800 OCTestLine[26791:2121857] >>>>>>>>>333 2021-08-09 14:29:20.474374+0800 OCTestLine[26791:2121857] >>>>>>>>>444 2021-08-09 14:29:20.474391+0800 OCTestLine[26791:2121857] >>>>>>>>>555 Program ended with exit code: 0
组合四:异步函数 + 自创串行队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_queue_create("queueName", NULL); dispatch_async(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-09 14:31:50.550148+0800 OCTestLine[26827:2123956] >>>>>>>>>111 2021-08-09 14:31:50.550465+0800 OCTestLine[26827:2123956] >>>>>>>>>222 2021-08-09 14:31:50.550483+0800 OCTestLine[26827:2123988] >>>>>>>>>666 2021-08-09 14:31:50.550511+0800 OCTestLine[26827:2123956] >>>>>>>>>333 2021-08-09 14:31:50.550521+0800 OCTestLine[26827:2123988] >>>>>>>>>777 2021-08-09 14:31:50.550539+0800 OCTestLine[26827:2123956] >>>>>>>>>444 2021-08-09 14:31:50.550548+0800 OCTestLine[26827:2123988] >>>>>>>>>888 2021-08-09 14:31:50.550568+0800 OCTestLine[26827:2123956] >>>>>>>>>555 2021-08-09 14:31:50.550572+0800 OCTestLine[26827:2123988] >>>>>>>>>999 Program ended with exit code: 0
组合五:异步函数 + 主队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_get_main_queue(); dispatch_async(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-10 14:24:01.516003+0800 OCTestLine[33821:2971842] >>>>>>>>>111 2021-08-10 14:24:01.516435+0800 OCTestLine[33821:2971842] >>>>>>>>>222 2021-08-10 14:24:01.516497+0800 OCTestLine[33821:2971842] >>>>>>>>>333 2021-08-10 14:24:01.516534+0800 OCTestLine[33821:2971842] >>>>>>>>>444 2021-08-10 14:24:01.516551+0800 OCTestLine[33821:2971842] >>>>>>>>>555 2021-08-10 14:24:01.516677+0800 OCTestLine[33821:2971842] >>>>>>>>>666 2021-08-10 14:24:01.516702+0800 OCTestLine[33821:2971842] >>>>>>>>>777 2021-08-10 14:24:01.516721+0800 OCTestLine[33821:2971842] >>>>>>>>>888 2021-08-10 14:24:01.516753+0800 OCTestLine[33821:2971842] >>>>>>>>>999 Program ended with exit code: 0
组合六:异步函数 + 全局并发队列
- (void)test { NSLog(@">>>>>>>>>111"); dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_async(queue, ^{ NSLog(@">>>>>>>>>666"); NSLog(@">>>>>>>>>777"); NSLog(@">>>>>>>>>888"); NSLog(@">>>>>>>>>999"); }); NSLog(@">>>>>>>>>222"); NSLog(@">>>>>>>>>333"); NSLog(@">>>>>>>>>444"); NSLog(@">>>>>>>>>555"); }
控制台的打印结果:
2021-08-09 14:33:36.189928+0800 OCTestLine[26868:2125874] >>>>>>>>>111 2021-08-09 14:33:36.190261+0800 OCTestLine[26868:2125898] >>>>>>>>>666 2021-08-09 14:33:36.190277+0800 OCTestLine[26868:2125874] >>>>>>>>>222 2021-08-09 14:33:36.190314+0800 OCTestLine[26868:2125898] >>>>>>>>>777 2021-08-09 14:33:36.190321+0800 OCTestLine[26868:2125874] >>>>>>>>>333 2021-08-09 14:33:36.190337+0800 OCTestLine[26868:2125898] >>>>>>>>>888 2021-08-09 14:33:36.190351+0800 OCTestLine[26868:2125874] >>>>>>>>>444 2021-08-09 14:33:36.190356+0800 OCTestLine[26868:2125898] >>>>>>>>>999 2021-08-09 14:33:36.190378+0800 OCTestLine[26868:2125874] >>>>>>>>>555 Program ended with exit code: 0
Through the parental monitoring program, parents can pay attention to their children’s mobile phone activities and monitor WhatsApp messages more easily and conveniently. The application software runs silently in the background of the target device, recording conversation messages, emoticons, multimedia files, photos, and videos. It applies to every device running on Android and iOS systems.