随笔分类 -  客户端

摘要:在编译Xcode工程时,常常会遇到头文件找不到的情况,例如下图中的OpenCV: 这时可以检查一下Xcode工程的配置: TARGETS -> 正在编译的target -> Build Settings -> Other C++ Flags 把缺失的头文件目录加上,例如我的OpenCV对应的路径是/ 阅读全文
posted @ 2019-11-14 11:32 happyyoung 阅读(923) 评论(0) 推荐(0)
摘要:AppleScript 后缀名scpt 阅读全文
posted @ 2019-01-30 16:16 happyyoung 阅读(186) 评论(0) 推荐(0)
摘要:读写锁 阅读全文
posted @ 2019-01-23 12:54 happyyoung 阅读(399) 评论(0) 推荐(0)
摘要:生产者消费者模式实现 阅读全文
posted @ 2019-01-21 16:48 happyyoung 阅读(291) 评论(0) 推荐(0)
摘要:Flutter 阅读全文
posted @ 2019-01-18 14:38 happyyoung 阅读(194) 评论(0) 推荐(0)
摘要:一、什么是Runloop?为什么需要Runloop? Runloop,顾名思义,即运行循环。 没有Runloop的情况下,一个线程执行完一个任务,就会退出并销毁。等到需要处理下一个任务时,再重新创建一个线程。 1、当任务小而多时,频繁地创建和销毁线程,会带来不小的代价。 2、主线程要是退出了,整个i 阅读全文
posted @ 2019-01-15 20:06 happyyoung 阅读(307) 评论(0) 推荐(0)
摘要:一、block是什么? block是带有自动变量(局部变量)的匿名函数。它是C语言的扩展功能,C语言标准并不支持block。 block是Objective-C的闭包实现,正如C++中的Lambda表达式。闭包简单理解即函数中的函数,闭包在JavaScript中是一个很重要的概念。作为“函数中的函数 阅读全文
posted @ 2019-01-14 09:53 happyyoung 阅读(424) 评论(0) 推荐(0)
摘要:GCD(Grand Central Dispatch),主要用于多线程编程。它屏蔽了繁琐的线程实现及管理细节,将其交由系统处理。开发者只需要定义任务block(在底层被封装成dispatch_continuation_t结构体),并提交到正确的dispatch queue中。GCD包含dispatc 阅读全文
posted @ 2019-01-11 10:15 happyyoung 阅读(1166) 评论(0) 推荐(0)
摘要:执行外部命令 阅读全文
posted @ 2018-12-09 11:50 happyyoung 阅读(233) 评论(0) 推荐(0)
摘要:代码混淆 参考链接: https://blog.csdn.net/yiyaaixuexi/article/details/29201699 http://fighting300.com/2017/04/01/iOS-code-obfuscate/ 阅读全文
posted @ 2018-12-06 17:06 happyyoung 阅读(274) 评论(0) 推荐(0)
摘要:NSTableView不可滚动,通常将其嵌入NSScrollView以支持NSTableView。 Cell Based View Based 1、遵循协议NSTableViewDataSource,NSTableViewDelegate 2、实现必需的协议方法 拖拽 剪贴板 阅读全文
posted @ 2018-12-06 10:58 happyyoung 阅读(859) 评论(0) 推荐(0)
摘要:Mach-O(Mach Object),是一种基于Mach内核的文件格式,苹果很多文件都采用这种格式,最常见的就是可执行文件和动态库。 当然,还有.o的目标文件、.a和.framework的静态库以及动态连接器dyld等等。 利用MachOView可以查看Mach-O文件的内部结构,以Mac微信为例 阅读全文
posted @ 2018-12-02 07:22 happyyoung 阅读(781) 评论(0) 推荐(0)
摘要:class-dump 阅读全文
posted @ 2018-11-30 16:51 happyyoung 阅读(457) 评论(0) 推荐(0)
摘要:atomic(原子的),顾名思义,原子操作应该是线程安全的,然而,真相并不是! @property (atomic, strong) NSMutableArray *arr; // 多线程操作arr并不安全 因为atomic关键字只是保证了getter和setter的原子性,相当于分别在这两个方法首 阅读全文
posted @ 2018-11-28 21:28 happyyoung 阅读(343) 评论(0) 推荐(0)
摘要:工程配置中,有三个路径和库的加载息息相关: 1、@executable_path 可执行文件的路径,例如/Applications/WeChat.app/Contents/MacOS。 2、@loader_path 被加载的二进制的路径,若该二进制是可执行文件,则@loader_path等价于@ex 阅读全文
posted @ 2018-11-27 20:05 happyyoung 阅读(1780) 评论(0) 推荐(0)
摘要:类簇(class cluster),是一种基于抽象工厂的设计模式,广泛运用于系统的Foundation框架。顾名思义,即一坨类,这里指的是继承自同一父类的一组私有子类。这种实现既可以简化公共接口,又保证了功能的丰富性。 1、不使用类簇:概念简单,但是接口复杂 为了阐述类簇实现以及它的好处,思考一个问 阅读全文
posted @ 2018-11-27 15:06 happyyoung 阅读(677) 评论(0) 推荐(0)
摘要:1、单例模式 2、MVC模式 阅读全文
posted @ 2018-11-27 10:29 happyyoung 阅读(88) 评论(0) 推荐(0)
摘要:1、语句末尾的分号可有可无,类似python和JavaScript。 2、let定义常量,var定义变量 3、下划线 1)忽略区间值 4、范围操作符 1)闭合操作符 2)半开操作符 5、结构体是值类型 6、类是引用类型 7、函数 8、提前退出 9、Swift既是面向对象,又是函数式编程语言。 1)支 阅读全文
posted @ 2018-11-26 17:03 happyyoung 阅读(348) 评论(0) 推荐(0)
摘要:NSOperation 阅读全文
posted @ 2018-11-19 15:01 happyyoung 阅读(144) 评论(0) 推荐(0)
摘要:图片处理 编码 解码 imageNamed 阅读全文
posted @ 2018-11-16 15:12 happyyoung 阅读(292) 评论(0) 推荐(0)