自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (7)
  • 问答 (2)
  • 收藏
  • 关注

原创 iOS - KVC底层应用

之前简单得讲过一些KVC的用法,但是并不能深入理解KVC内部实现及其原理,下面主要讲下KVC的底层原理。取值 valueForKey:在使用KVC取值的时候,使用valueForKey:方法,该方法会返回一个id类型的对象,那么它的内部会怎么处理的呢?现在我们使用该方法: Teacher *teacher = [[Teacher alloc] init]; NSString *...

2020-03-28 21:30:19 337

原创 iOS - 使用clang将Object-C代码转换为C++代码时 'UIKit/UIKit.h' file not found

问题在MacOS项目下使用clang命令clang -rewrite-objc main.m可以把main.m文件转换成C++文件,方便研究内部实现。但是如果是iOS项目的话执行上面clang命令就会报出下面错误:shiyudeMacBook-Pro:LeaksTest shiyusun$ clang -rewrite-objc main.mmain.m:9:9: fatal error: ...

2020-03-22 23:06:02 1324

原创 iOS-线程同步的几种方式

在多线程开发中数据的安全是非常重要的,在开辟分线程执行耗时操作以保证主线程不阻塞的同时,数据的安全也要保证才行。如果同一个资源(一个变量或者一段代码或者存储的数据等)同时被多个线程访问修改,可能会造成数据的错乱,得到的也就不是自己想要的结果,所以多线程开发中线程间的同步有时显得尤为重要。实现多线程间的同步方式:锁(互斥锁、条件锁、递归锁)和GCD(队列、信号量、栅栏)。了解更多类型的锁可以查看线...

2020-03-16 16:02:43 2264

原创 iOS - 线程中常见的几种锁

线程锁主要是用来解决“共享资源”的问题,实际开发中或多或少的都会用到各类线程锁,为了线程的安全我们有必要了解常见的几种锁,下面是本人查看一些大牛的博客然后整理的内容,加上自己的一些见解,水平有限,如果不慎有误,欢迎交流指正。常见锁列举自旋锁(OSSPinLock、os_unfair_lock)互斥锁(pthread_mutex_t、NSLock、@synthronized)递归锁(pth...

2020-03-15 21:20:47 1855

原创 iOS -多线程之pthread

pthread是POSIX thread的简写,一套通用的多线程API,适用于Unix、Linux、Windows等系统,跨平台、可移植,使用难度大的C语言框架,线程生命周期由程序员管理,百度百科上有详细的介绍。在多线程方面iOS有GCD、NSThread、NSOperation,所以开发时pthread几乎用不到,以下就简单运用pthread开启一个子线程,用来处理耗时操作。导入头文件想使用...

2020-03-12 16:20:52 509

原创 Swift - 泛型

泛型是Swift中重要的类型之一,意为不确定的类型。我们知道带有参数的函数是必需要指定参数的类型的,举个例子观察下面有几个同名函数实现相似的功能,但参数类型不同:一、节点泛型 func methodOne(param:String) { print("\(param)") } func methodTwo(param:Int) { prin...

2020-03-05 16:51:09 437

AAC_Test.zip

详细介绍音频的AAC编码和解码过程,可以直接把代码迁移你的项目中,适用于直播等各类音频类App

2018-03-28

DelayTest.zip

实现延时方法执行,可用的方法有定时器、GCD、NSThread、performSelector方法

2018-02-23

ThreadTest.zip

介绍多种开辟子线程的方法,包括:NSThread,NSOperationQueue,GCD等

2018-02-23

UnitTest.zip

单元测试、性能测试以及UI测试,代码示例,可以很好的看到怎么应用。

2018-02-23

PhotoTest.zip

对PhotoKit框架简单介绍与应用,Demo里面有仿微信和仿简书相册,以及相册视频集播放!

2018-02-06

ArrayTest.zip

多种数组遍历方式,GCD方式遍历,实现耗时操作在子线程中进行。

2018-02-05

ijkplayerTest

ijkplayer是基于ffmpeg的一个视频播放框架,可以播放多种格式的视频,许多直播也是用的这个框架!

2018-01-30

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除