
iOS
goldfish3
这个作者很懒,什么都没留下…
展开
-
iOS进程间通信
对于app来说,一个运行的app对应于一个进程,进程间通信就是app通信通信方式1:url scheme这个是iOS app通信最常用到的通信方式,App1 通过openURL 的方法跳转到 App2,并且在URL中带上想要的参数,有点类似http的get请求那样进行参数传递。这种方式是使用最多的最常见的,使用方法也很简单只需要源App1在info.plist中配置 LSApplication...原创 2019-04-21 15:52:55 · 482 阅读 · 0 评论 -
iOS中的各种锁
1:互斥锁测试代码使用3个线程,每个线程加1w次,测试各个互斥锁的性能注意使用锁的时候,不要将锁声明为 @property,这样会生成set方法和get方法,每次加锁都会调用get方法,这样降低了锁的性能#import <mach/mach_time.h>dispatch_group_t group = dispatch_group_create(); dispat...原创 2019-04-21 22:41:07 · 237 阅读 · 0 评论 -
iOS之Runloop
RunLoop的概念:一般来说,一个线程只能执行一个任务,任务执行完成就会退出,有时候,我们需要这样一种机制,让线程能随时处理事件,但不会退出,通常来说,代码逻辑如下:function loop() { initialize(); do { var message = get_next_message(); process_message(mes...原创 2019-04-27 16:59:03 · 680 阅读 · 0 评论 -
iOS之autoreleasepool详解
所有app的入口都是一个main函数int main(int argc, char * argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); }}可以发现:整个 iOS 的应用都是包含在一个...原创 2019-04-27 21:09:42 · 3738 阅读 · 1 评论 -
iOS音频视频开发
数字音频概念介绍将模拟信号数字化,需要三个步骤:采样:在时间轴上对信号进行数字化。量化:在幅度上对每个采样进行数字化,如使用16bit的二进制信号来表示声音的一个采样,16bit所表示的范围是 [-32768,32767],共有65536个可能取值。编码:对采样结果进行储存。音频裸数据格式——脉冲编码调制数据PCM,描述一段PCM数据一般需要以下几个概念:量化格式:如在CD中,为1...原创 2019-04-23 22:10:44 · 1224 阅读 · 0 评论 -
iOS runtime
runtime是oc的c语言实现objective c代码编译,先要转变为c语言,然后再进行汇编和编译的操作将oc转化为c的,就是由runtime实现的。下面是类、对象、方法、方法列表在c语言中的实现(删除了宏定义部分)//对象struct objc_object { Class isa OBJC_ISA_AVAILABILITY;};//类(也叫类对象,类在编译期间用于创...原创 2019-04-19 14:35:54 · 172 阅读 · 0 评论 -
iOS多线程汇总(NSOperation、GCD、NSThread、p_thread))
简介iOS的多线程api一共有4套,从底层往上,分别是:p_thread :iOS基于unix操作系统,遵循POSIX标准,因此,最底层的多线程接口就是p_thread了。NSThread:基本上可以看成是p_thead的封装。GCD:可以理解为一种线程池化技术的实现。NSOperaion:GCD的封装,使用面向对象的方式管理任务和线程,提供了一些方便的api,代码可读性更高。一:...原创 2019-08-21 10:23:40 · 423 阅读 · 0 评论 -
iOS使用信号量实现读写者问题
下面的代码有个问题,写的线程始终不会被调用,原因不明。。。除非把读的线程减少到一个#import "ViewController.h"@interface ViewController (){ dispatch_semaphore_t _mutex; int _count;}@property(strong,nonatomic) NSMutableArray* file;...原创 2019-09-03 15:29:07 · 290 阅读 · 0 评论 -
iOS的一些知识总结
...原创 2019-09-03 17:11:42 · 227 阅读 · 0 评论