<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[不积跬步，无以至千里；不积小流，无以成江海。]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alpaca12</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alpaca12]]></copyright><item><title><![CDATA[Barrier 性能如何?]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/82714979</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/82714979</guid><author>Alpaca12</author><pubDate>Sat, 15 Sep 2018 19:54:15 +0800</pubDate><description><![CDATA[在处理容器的多线程问题, 难免会用到加锁的方式来处理, iOS开发中, 锁有以下几种:

(1) 自旋锁 OSSpinLock

(2) 互斥锁 pthread_mutex, NSLock, @synchronized

(3) 读写锁 pthread_rwlock

(5) 递归锁 NSRecursiveLock, pthread_mutex(recursive)

(6) 信号量 dispat...]]></description><category></category></item><item><title><![CDATA[初始汇编]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/81051013</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/81051013</guid><author>Alpaca12</author><pubDate>Sun, 15 Jul 2018 12:05:19 +0800</pubDate><description><![CDATA[计算机能识别的语言是机器语言，即0和1组成的指令，如0001，0111等，这种指令对于我们而言是不可读的，但是它与可编程语言（汇编语言）是一一对应的，每个汇编指令唯一对应于一条机器指令，而且汇编语言对应我们而言是可读的，这样我们从汇编入手，理解系统内核，明白高级语言代码的本质。高级语言运行的流程一般是：汇编语言可以通过编译得到机器语言，机器语言可以通过反汇编得到汇编语言高级语言可以通过编译得到汇编...]]></description><category></category></item><item><title><![CDATA[iOS 内存泄漏的常见场景]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/80157775</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/80157775</guid><author>Alpaca12</author><pubDate>Mon, 18 Jun 2018 18:43:57 +0800</pubDate><description><![CDATA[内存泄漏的常见场景CF类型内存注意以creat,copy作为关键字的函数都是需要释放内存的，注意配对使用。比如：CGColorCreate&amp;lt;--&amp;gt;CGColorReleaseMRC内存使用这部分不做详细介绍，也是注意配对使用，需要说明的是，如果代码中有部分文件是MRC的，在已有文件中加代码的时候注意一下，不能都按照ARC的方式处理。ARC内存使用ARC已经为我们做了很多封装，我们不必再...]]></description><category></category></item><item><title><![CDATA[class_addMethod 简介]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/80707027</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/80707027</guid><author>Alpaca12</author><pubDate>Fri, 15 Jun 2018 17:08:12 +0800</pubDate><description><![CDATA[BOOL class_addMethod(Class _Nullable cls, SEL _Nonnull name, IMP _Nonnull imp, const char * _Nullable types)在runtime.h中定义, 其作用是给一个类添加新的方法及该方法的具体实现.其 返回值为 BOOL 类型, yes表示添加方法成功, no表示添加方法失败.参数介绍/** 
 * A...]]></description><category></category></item><item><title><![CDATA[毕业三到五年，别让“努力”毁了你]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/80523237</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/80523237</guid><author>Alpaca12</author><pubDate>Thu, 31 May 2018 13:58:14 +0800</pubDate><description><![CDATA[毕业，就像一个大大的句号，从此，我们告别了一段纯真的青春、一段年少轻狂的岁月、一个充满幻想的时代，纷纷走向了社会。    刚毕业的时候，作为职场新人，我们都拿着接近的薪水，干着相似的事情，大家都过得差不多。    然而三到五年过去了，渐渐大家的差距就出来了。小伙伴A已经成了公司里的技术骨干，带领着自己的小团队，开始参与公司决策的事情；小伙伴B已经在业内小有名气，公众号、知乎、博客上粉丝众多，自己已...]]></description><category></category></item><item><title><![CDATA[实现 iOS 内存检测工具]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/80157520</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/80157520</guid><author>Alpaca12</author><pubDate>Tue, 01 May 2018 17:06:41 +0800</pubDate><description><![CDATA[在 iOS 开发中 内存泄漏是常见的问题, 这里整理下常用的内存检测方法.一 静态检测方法使用XCode分析功能，Product-&amp;gt;Analyze使用静态检测可以检查出一些明显的没有释放的内存，包括NSObject和CF开头的内存泄漏.缺点: 不能检测block导致的内存泄漏问题二 动态检测方法使用 instruments三 dealloc 重新检测重写dealloc 方法, 在界面返回或者...]]></description><category></category></item><item><title><![CDATA[iOS逆向工具篇]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/80044744</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/80044744</guid><author>Alpaca12</author><pubDate>Sun, 22 Apr 2018 23:42:30 +0800</pubDate><description><![CDATA[一、安装 MonkeyDev (非越狱调试)：非越狱机器或者使用Xcode调试第三方应用的时候有很多集成步骤，注入dylib，集成Reveal（UI分析工具）、class-dump（查看头文件工具）、Cycript（调试器）等等 !一、安装：Cycript地址1. 通过Cycript官网下载相关SDK2. 将解压后的文件直接放在硬盘opt文件夹下：3. 配置相关环境变量：打开终端，编辑.bash_...]]></description><category></category></item><item><title><![CDATA[cocoaPods 开发打包静态库]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78386616</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78386616</guid><author>Alpaca12</author><pubDate>Sun, 29 Oct 2017 17:30:00 +0800</pubDate><description><![CDATA[Cocoapods 开发并打包静态库]]></description><category></category></item><item><title><![CDATA[git : refusing to merge unrelated histories]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78354534</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78354534</guid><author>Alpaca12</author><pubDate>Thu, 26 Oct 2017 15:35:00 +0800</pubDate><description><![CDATA[fatal: refusing to merge unrelated histories
(non-fast-forward)
错误解决]]></description><category></category></item><item><title><![CDATA[reason: image not found]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78331158</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78331158</guid><author>Alpaca12</author><pubDate>Tue, 24 Oct 2017 16:30:07 +0800</pubDate><description><![CDATA[iOS 错误 reason: image not found 的解决方法]]></description><category></category></item><item><title><![CDATA[message sent to deallocated instance]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78079979</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78079979</guid><author>Alpaca12</author><pubDate>Sun, 24 Sep 2017 21:28:28 +0800</pubDate><description><![CDATA[[Obj retain] message sent to deallocated instance  错误解决方案]]></description><category></category></item><item><title><![CDATA[将本地项目提交github]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78073787</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78073787</guid><author>Alpaca12</author><pubDate>Sat, 23 Sep 2017 21:55:48 +0800</pubDate><description><![CDATA[1.在gitHub 上 new repositories

2.进入工程文件所在文件目录，git init

3.git add -A (进入文件 添加文件,-A表示添加全部文件)

4.git commit -m “提交备注”

5.git remote add origin url(该url是你new repositories后的url)

6.git pull –rebase origin]]></description><category></category></item><item><title><![CDATA[WKWebView 初窥-JS交互探究]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78023902</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78023902</guid><author>Alpaca12</author><pubDate>Mon, 18 Sep 2017 21:18:02 +0800</pubDate><description><![CDATA[WKWebView 注入 js 交互]]></description><category></category></item><item><title><![CDATA[抓包工具Charles的使用]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/78011784</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/78011784</guid><author>Alpaca12</author><pubDate>Sun, 17 Sep 2017 17:28:44 +0800</pubDate><description><![CDATA[iOS 抓包工具 Charles 的使用]]></description><category></category></item><item><title><![CDATA[iOS hook delegate (一)]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/77914907</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/77914907</guid><author>Alpaca12</author><pubDate>Sat, 09 Sep 2017 14:04:30 +0800</pubDate><description><![CDATA[iOS hook delegate]]></description><category></category></item><item><title><![CDATA[Return]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/77909399</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/77909399</guid><author>Alpaca12</author><pubDate>Sat, 09 Sep 2017 10:39:44 +0800</pubDate><description><![CDATA[Return 回归自从找完工作后, 一直忙于毕业相关的事宜, 没有再更新自己的技术博客. 毕业入职后又由于各种原因, 期间也没能写过任何的技术博客, 深感惭愧.  
今天在闲娱时刻, 回归本心, 重新开始自己的技术之旅, 加油~]]></description><category></category></item><item><title><![CDATA[Mac 自定义"终端"快捷键]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/64128198</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/64128198</guid><author>Alpaca12</author><pubDate>Mon, 20 Mar 2017 16:47:58 +0800</pubDate><description><![CDATA[mac下为终端自定义打开快捷键]]></description><category></category></item><item><title><![CDATA[GCD内部实现--摘自《iOS与OS X多线程和内存管理》]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/52563333</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/52563333</guid><author>Alpaca12</author><pubDate>Sat, 17 Sep 2016 15:25:19 +0800</pubDate><description><![CDATA[GCD 内部实现介绍]]></description><category></category></item><item><title><![CDATA[Add Binary -- leetcode]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/52539624</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/52539624</guid><author>Alpaca12</author><pubDate>Wed, 14 Sep 2016 16:48:12 +0800</pubDate><description><![CDATA[二进制相加]]></description><category></category></item><item><title><![CDATA[大数相加和大数相乘]]></title><link>https://blog.youkuaiyun.com/Alpaca12/article/details/52434874</link><guid>https://blog.youkuaiyun.com/Alpaca12/article/details/52434874</guid><author>Alpaca12</author><pubDate>Sun, 04 Sep 2016 21:22:53 +0800</pubDate><description><![CDATA[大数操作]]></description><category></category></item></channel></rss>