TCP与UDP
Socket socket是一种操作系统提供的进程间通信机制。在网络环境中,套接字是建立网络应用程序的可编程接口。 一个套接字包括:主机的IP地址和进程的端口号。 套接字分为3中类型: 流套接字:主要用于TCP协议,它提供了双向的、有序的、无重复的、无记录边界的数据传输服务。 数据报套接字:主要用于UDP协议,它提供双向的、无序的、有重复的、有记录边界的数据传输服务。 ...
Socket socket是一种操作系统提供的进程间通信机制。在网络环境中,套接字是建立网络应用程序的可编程接口。 一个套接字包括:主机的IP地址和进程的端口号。 套接字分为3中类型: 流套接字:主要用于TCP协议,它提供了双向的、有序的、无重复的、无记录边界的数据传输服务。 数据报套接字:主要用于UDP协议,它提供双向的、无序的、有重复的、有记录边界的数据传输服务。 ...
什么是https 超文本传输安全协议(英语:HyperText Transfer Protocol Secure,缩写:HTTPS;常称为HTTP over TLS、HTTP over SSL或HTTP Secure)是一种通过计算机网络进行安全通信的传输协议。1 什么是ssl/tls 传输层安全性协议(英语:Transport Layer Security,缩写:TLS)及其前身安全...
产生死锁的四个必要条件: 互斥条件:一个资源每次只能被一个进程使用。 占有且等待:一个进程因请求资源而阻塞时,对已获得的资源保持不放。 不可强行占有:进程已获得的资源,在末使用完之前,不能强行剥夺。 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。 锁的分类 在iOS中锁的基本种类只有两种:互斥锁、自旋锁,其他的比如条件锁、递归锁、信号量都是上层的封装...
RunLoop的概念? 一个线程一次只能执行一个任务,执行完成后线程就会退出。runloop的目的就是在有工作要做的时候让线程保持忙碌,在没有工作的时候让线程休眠。简单来说,就是让线程能随时处理事件但并不退出。 RunLoop的本质 RunLoop 实际上就是一个对象,这个对象管理了其需要处理的事件和消息,并提供了一个入口函数来执行上面 Event Loop 的逻辑。线程执行了这个函数...
assign assign常常用来修饰基本数据类型而对象类型则使用weak来修饰的原因: 对象开辟的空间是在堆空间,销毁和创建都由程序员手动去完成。 指针开辟的空间是在栈上,由系统去销毁。 使用assign修饰,当对象销毁时并不会将指针置为nil。 所以当堆空间的对象销毁时指向对象的指针仍然存在,会造成野指针,当...
在日常的编程中,很多的网络数据都能在控制台里面看到,但是APP里面web的网络请求就需要抓包了,这里用的工具就是Charles。 网上有一篇比较出名的文章,是唐巧的 Charles 从入门到精通,可以说比较详细了,但是在最近的使用中,发现这个教程似乎行不通,所以写下这篇文章记录一下我的方法。 安装Charles 去官网下载Charles,安装。 给Charles打开代理 打开Cha...