首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
yxibng
掘友等级
iOS
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
58
文章 57
沸点 1
赞
58
返回
|
搜索文章
赞
文章( 57 )
沸点( 1 )
iOS NSCache & NSURLCache 机制原理探究 (二)
目录我就继续上篇文章的来了 , 以便比较阅读. 2. NSURLCache 首先我们都知道 , 使用 NSURLCache 进行请求数据的缓存时 , 同时本身默认也会有缓存的处理. 那么我们需要做什么 ? 原生默认做了什么 ? 啥意思呢 ? 重点就是 它提供了磁盘缓存和内存缓存…
分析可执行文件mach-o
Mach-O 是针对不同运行时可执行文件的文件类型。在Windows上.exe(Portable Executable )是可直接执行的文件扩展名,而在Linux(以及很多版本的Unix)系统上ELF (Executable and Linking Format)是可直接执行的…
如何安全使用dispatch_sync
iOS开发者在与线程打交道的方式中,使用最多的应该就是GCD框架了,没有之一。GCD将繁琐的线程抽象为了一个个队列,让开发者极易理解和使用。但其实队列的底层,依然是利用线程实现的,同样会有死锁的问题。本文将探讨如何规避disptach_sync接口引入的死锁问题。
【RSA】RSA加密、解密、签名与验证
最近要做iOS SDK的联网授权,涉及到数据安全验证,因此想到使用RSA进行签名和验证。 1、客户方前往我方开放平台注册授权,得到AppId和AppSecret。 2、客户方集成SDK,调用Register接口传入AppId和AppSecret。 3、SDK将AppId和客户端…
iOS开发·runtime原理与实践: 消息转发篇(Message Forwarding) (消息机制,方法未实现+API不兼容奔溃,模拟多继承)
在我们开始使用消息机制之前,我们可以约定我们的术语。例如,很多人不清楚“方法”与“消息”是什么,但这对于理解消息传递系统如何在低级别工作至关重要。 方法:与一个类相关的一段实际代码,并给出一个特定的名字。例:- (int)meaning { return 42; } 消息:发送…
一文读懂iOS线程调用栈原理
还要一个重要的用途就是应用性能优化中的“卡顿检测”,需要获取主线程的调用栈,来检测具体的函数调用过程分析耗时来优化性能。 卡顿检测获取线程堆栈信息,如微信开源性能探测工具Matrix,检测包括崩溃、卡顿及爆内存,目前包含两个插件:WCCrashBlockMonitorPlugi…
组件化架构漫谈
随着移动互联网的不断发展,很多程序代码量和业务越来越多,现有架构已经不适合公司业务的发展速度了,很多都面临着重构的问题。 在公司项目开发中,如果项目比较小,普通的单工程+MVC架构就可以满足大多数需求了。但是像淘宝、蘑菇街、微信这样的大型项目,原有的单工程架构就不足以满足架构需…
iOS 编译详解 LLVM Clang
从上图我们可以知道,编译型语言需要在运行之前就将代码全部编译好,最终运行的文件是编译后的可执行文件。我们将编译型语言所使用的编译方式称为 AOT (Ahead of time) 预先编译。 而直译式语言则是在运行的过程中,一边编译一边执行,最终运行的文件其实就是一开始写的源代码…
LLVM与Clang的一些事儿
LLVM项目的发展起源于2000年伊利诺伊大学厄巴纳-香槟分校维克拉姆·艾夫(Vikram Adve)与克里斯·拉特纳(Chris Lattner)的研究,他们想要为所有静态及动态语言创造出动态的编译技术。LLVM是以BSD授权来发展的开源软件。2005年,苹果电脑雇用了克里斯…
iOS 查漏补缺 - LLVM & Clang
对于 iOS 开发者来说,Swift 之父 Chris Lattner 的大名应该都会有所耳闻。他和他的团队所开发的 LLVM 已经成为 iOS 乃至 macOS 整个生态中至关重要的底层基础设施。虽然 Lattner 本人已经去 Google 做人工智能了,但是对于 iOS …
下一页
个人成就
文章被点赞
5
文章被阅读
12,773
掘力值
237
关注了
67
关注者
1
收藏集
1
关注标签
17
加入于
2018-12-22