2018年06月22日
|
阅读量
😁
本文使用mac电脑Wireshark抓包,并对一次http链接做简单的分析
Wireshark抓包
打开Wireshark选择本机mac的网卡,输入过滤条件筛选端口、源地址和目的地址:
tcp.port == 80 && (ip.dst==111.231.221.195 || ip.src=...
阅读更多
2018年05月12日
|
阅读量
😁
Runtime
Runtime是iOS动态特性的重要体现,也是iOS的内部核心之一。几乎所有的oc代码,底层都以基于runtime。其源码由c和汇编语言编写。
本文以及接下来的runtime的文章都是基于objc-750版本的源码
前沿
一些常见而重要的关键字:
typedef struct objc_o...
阅读更多
2018年05月09日
|
阅读量
😁
Socket基础知识:
流:一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象。不管是文件,还是套接字,还是管道,我们都可以把他们看作流。
阻塞和非阻塞:
阻塞:阻塞调用是指调用结果返回之前,当前线程会被挂起。函数只有在得到结果之后才会唤醒返回。
非阻塞:非阻塞和阻塞的概念相对应,...
阅读更多
2018年03月23日
|
阅读量
😁
事件响应链
通过事件传递找到最合适的view为第一响应者,其父view或viewcontroller则为第二响应者,以此递推,形成响应链。即pointInside返回true的view加上它们的控制器、UIWindow和UIApplication共同构成响应链。响应链的作用是找到一个和多个合适的view顺序的响...
阅读更多
2018年02月13日
|
阅读量
😁
今天突然看到个问题, 什么是域名?当时只能答曰网址,回家google一会,现在列出一些基本概念
什么是DNS?
DNS是:域名服务器(Domain Name Server)。在Internet上域名与IP地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP地址,它们之间的转换工作称为域名解析,...
阅读更多
2017年12月24日
|
阅读量
😁
1 Thrift: 文档补充
thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Go,Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Nod...
阅读更多
2017年09月19日
|
阅读量
😁
解释器与编译器
解释器:直接执行用编程语言编写的指令的程序
编译器:把源代码转换成(翻译)低级语言的程序
实际上,解释器可以将源语言转换成某种中间形式(或语言)来加速执行,这就是这类语言通常依赖于虚拟机的原因,而这自然会导致一些问题:
所有使用虚拟机的语言都是解释型语言吗?
他们其实...
阅读更多
2017年09月09日
|
阅读量
😁
类
简介
swift的类和c++的类基本相似,这里整理不同的地方,以突显其独有特性
1.属性
swift class的属性有三种:存储属性,计算属性和类型属性。存储属性存储常量或变量作为实例的一部分,而计算属性计算(不是存储)一个值。类型属性则直接作用于类型本身,而不是类的实例。
一个典型例子:
str...
阅读更多