iOS 网络
文章平均质量分 64
@福者
曾研究银行技术部,奇虎360,字节跳动......等工作。研究技术已经是生活中不可缺少快乐,
展开
-
iOS 安全锁原理集合
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群 一、概念我们在使用多线程的时候多个线程可能会访问同一块资源,这样就很容易引发数据错乱和数据安全等问题,这时候就需要我们保证每次只有一个线程访问这一块资源,锁 应运而生。效率图: 二、...原创 2018-11-14 19:58:02 · 2011 阅读 · 0 评论 -
iOS 多线程~安全问题
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、主线程的概念一个iOS程序运行后,默认会开启1条线程,称为“主线程”或“UI线程”二、主线程的作用显示\刷新UI界面处理UI事件(比如点击事件、滚动事件、拖拽事件等) 主线程的使用注意事项: 不能把比原创 2017-09-12 13:56:57 · 654 阅读 · 0 评论 -
iOS 多线程概念
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、线程的概念 什么是进程: 一个运行着的程序就是一个进程或者叫做一个任务,一个进程至少包含一个线程,线程就是程序的执行流。 什么是主线程:Mac和iOS中的程序启动,创建好一个进程的同时,一个线程便开始运行,这个线原创 2017-09-12 08:47:37 · 376 阅读 · 0 评论 -
iOS dispatch_async到主线程封装C接口
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、概念 代码里面有时候会把将要执行的内容放到主线程里面执行,但如果已经是主线程里面的代码调用dispatch_async的时候偶尔会出现crash,所以就需要判断是否已经在主线程里面了。通常的做法类似于下面所代码:以下是C接口:void WXPerformBlockSyn原创 2017-09-23 00:14:10 · 1087 阅读 · 0 评论 -
iOS 多线程~NSThread、NSOperation 、GCD 技术区别~思维导图
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、思维导图:注意:此图转载非博主总结谢谢!!!原创 2017-09-14 08:42:02 · 501 阅读 · 0 评论 -
iOS 多线程~NSThread、NSOperation 、GCD 技术区别
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、效果图二、NSThread每个NSThread对象对应一个线程,真正最原始的线程。1)优点:NSThread轻量级最低,相对简单。2)缺点:手动管理所有的线程活动,如生命周期、线程同步、睡眠等。三、NSOperation自带线原创 2017-09-13 20:54:37 · 445 阅读 · 0 评论 -
iOS GCD 图片合成效果(几张图片拼接在一起)~demo
联系人:石虎QQ: 1224614774 昵称:嗡嘛呢叭咪哄//GCD 图片合成效果:#import"SHViewController.h"@interfaceViewController()@property(weak,nonatomic)IBOutletUIImageView*imageView;//视图 imageView原创 2017-05-30 08:49:02 · 8175 阅读 · 0 评论 -
iOS AFN监控联网状态~demo
联系人:石虎 QQ: 1224614774 昵称:嗡嘛呢叭咪哄1.AFN监控联网状态联网状态status// 2.设置监听 示例代码AFNetworkReachabilityManager *manager = [AFNetworkReachabilityManager sharedManager];// 提示:要监控网络连接状态,必须要先调用单例的st原创 2017-05-31 23:43:17 · 780 阅读 · 1 评论 -
iOS GCD中如何控制最大并发数
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、概述1、GCD并发的困扰在GCD中有两种队列,分别是串行队列和并发队列。在串行队列中,同一时间只有一个任务在执行,不能充分利用多核 CPU 的资源,效率较低。并发队列可以分配多个线程,同时处理不同的任务;效率虽然提升了,但是多线程的并发是用时间片轮转方法转载 2017-08-05 23:37:07 · 7538 阅读 · 0 评论 -
iOS 文件上传 post数据
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、文件下载获取资源文件大小有两张方式1、[objc] view plain copyHTTP HEAD方法 NSMutableURLRequest *request = [NSMutableURLRequest requestWith原创 2017-07-04 23:37:03 · 677 阅读 · 0 评论 -
iOS 多线程~互斥锁
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一、互斥锁的使用 @synchronized(锁对象) { //需要锁定的代码 };二、互斥锁的优缺点优点:能有效防止因多线程抢夺资源造成的数据安全问题缺点:需要消耗大量的CPU资源互斥锁的使用前提:多条线程抢夺同一块资源的时候使用。原创 2017-09-13 00:05:10 · 1082 阅读 · 0 评论 -
iOS 代码规范~新项目,快速的调试方法
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念//1.接手一个新项目,快速的调试,查看某个模块或者方法的作用,需要注释掉一个方法,或者某个代码块,直接写return;而不是全选,注释掉;二、代码示例//比如:查看这个方法loadRecommendTags作用- (void)loadRecommendTag原创 2017-10-19 09:53:14 · 371 阅读 · 0 评论 -
iOS OS X 和 iOS 中的多线程技术-1
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念 多线程的目的是,通过并发执行提高 CPU 的使用效率,进而提供程序运行效率。OS X 和 iOS 是多线程操作系统,它们追随 UNIX 系统使用了 POSIX 线程模型。OS X 和 iOS 都提供了一套底层的 C 语言 POSIX 线程 API 来创建和管理线程。但实际应用开发中原创 2017-11-21 19:43:45 · 356 阅读 · 0 评论 -
iOS 连接外设的几种方式
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群 一、概念 一般iOS开发者做APP开发大部分时候都是通过Http(s)请求跟后台服务器打交道,做一些信息展示和用户交互。很少涉及到去跟外部硬件设备连接的开发。随着近年来车联网和物联网...转载 2018-09-21 09:25:11 · 4262 阅读 · 1 评论 -
iOS 数据包
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.数据包含义: 宽泛意义的数据包:每一个数据包都包含"标头"和"数据"两个部分."标头"包含本数据包的一些说明."数据"则是本数据包的内容.2.细分数据包: 1)应用程序数据包: 标头部分规定应用程序的数据格式.数据部分传输具体的数据内容.*** ——对应上图中的数据!*** 2) TCP/UDP数据包:标头部分包...原创 2018-02-12 09:39:33 · 526 阅读 · 0 评论 -
iOS OS X 和 iOS 中的多线程技术-3 (NSThread)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、NSThread NSThread 是 OS X 和 iOS 都提供的一个线程对象,它是线程的一个轻量级实现。在执行一些轻量级的简单任务时,NSThread 很有用,但用户仍然需要自己管理线程生命周期,进行线程间同步。比如,线程状态,依赖性,线程间同步等线程相关的主题 NSThread 都没有涉及原创 2017-11-25 14:22:26 · 307 阅读 · 0 评论 -
iOS OS X 和 iOS 中的多线程技术-2 (performSelectors)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、performSelectors(执行选择器) NSObject 提供了以 performSelector 为前缀的一系列方法。它们可以让用户在指定线程中,或者立即,或者延迟执行某个方法调用。这个方法给了用户实现多线程编程最简单的方法。下面有一些例子: 1.在当前线程中执原创 2017-11-25 13:47:28 · 295 阅读 · 0 评论 -
iOS GCD~performSelector、dispatch_once、NSOperation总结
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、使用GCD 替代 performSelector 系列方法 NSObject 的 performSelector 系列方法有很多限制。传给要执行的方法的参数的数量是有限制的,也没法方法保证能正确地取得要执行的方法的返回值。这些限制在使用 block 的 GCD 中都不存在。原创 2017-12-05 10:02:08 · 257 阅读 · 0 评论 -
iOS 多个线程对数组操作(遍历,插入,删除),实现一个线程安全的NSMutabeArray
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.重写构造方法 @interface SHSafetyArray : NSObject { @private NSMutableArray *_mutableArray; //声明数组 }原创 2017-12-21 09:55:07 · 3915 阅读 · 1 评论 -
iOS OS X 和 iOS 中的多线程技术-4.1 (GCD)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、GCD 分发队列GCD 分发队列是执行任务的有力工具。使用分发队列,你可以异步或者阻塞执行任意多个 block 的代码。你可以使用分发队列来执行几乎任何线程任务。GCD 提供了简单易用的接口。二、在 GCD 中存在三种队列:1 串行分发队列(Seria原创 2017-12-04 09:56:10 · 222 阅读 · 0 评论 -
iOS OS X 和 iOS 中的多线程技术-4 (GCD)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、GCDGCD(Grand Central Dispatch)是 Apple 公司为了提高 OS X 和 iOS 系统在多核处理器上运行并行代码的能力而开发的一系列相关技术,它提供了对线程的高级抽象。GCD 是一整套技术,包含了语言级别的新功能,运行时库,系统级别的优化,这些一起为并发代码的执行提原创 2017-12-03 15:28:50 · 214 阅读 · 0 评论 -
iOS OS X 和 iOS 中的多线程技术-4 (NSOperation)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一NSOperation:1. NSOperation做的事情比 NSThread 更多一些。通过继承 NSOperation,可以使子类获得一些线程相关的特性,进而可以安全地管理线程生命周期。比如,以线程安全的方式建立状态,取消线程。配合 NSOperationQueue,可以控制线程间原创 2017-12-01 10:50:20 · 214 阅读 · 0 评论 -
iOS Reachability监控网络使用
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄第一步: 在AppDelegate.h添加头文件"Reachability.h"第二步: 导入框架SystemConfiguration.frame第三步: 下面是代码: - (BOOL)application:(UIApplication *)app原创 2017-06-12 23:00:04 · 462 阅读 · 0 评论 -
iOS Http协议学习(一)
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范转载 2017-06-24 11:11:00 · 465 阅读 · 0 评论 -
iOS 下载图片
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄//// 下载图片// Created by 石虎 on 17/6/18.// Copyright © 2017年石虎. All rights reserved.//#import "ViewController.h"/**注意:1.只原创 2017-06-18 17:41:38 · 818 阅读 · 0 评论 -
iOS AFN 笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄AFN 小节功能:-对 NSURLConnection & NSURLSession的封装-提供了自动序列化和反序列化功能-提供了完善的错误处理机制使用:-由于大多数的网络请求都是针对一个服务器发起的,所以可以定义一个全局的 manager原创 2017-06-17 23:08:40 · 383 阅读 · 0 评论 -
iOS SAX 、DOM 、XML解析区别笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄SAX方式解析-从上到下-只读-性能好DOM方式-一次性将XML文档以树型结构读入内存-可以读,可以改-内存消耗非常大!-在iOS中默认不支持 DOM方式解析!-在MAC中提供一个 NSXML的类,可以实现 DOM方式的解原创 2017-06-17 23:00:31 · 429 阅读 · 1 评论 -
iOS ASI 笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄ASI -“HTTP访问终结者”2012年11月停止更新与 AFN的对比-AFN1.基于 NSURLConnection & NSURLSession进行的封装2.使用简单3.提供了自动的序列化 &反序列化支持原创 2017-06-17 22:42:12 · 407 阅读 · 0 评论 -
iOS JSON 笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄1. 让手机和电脑处于同一个局域网,在家里,只要手机和电脑都连到路由器就可以了JSON - 是一个特殊格式的字符串,用来在网络间传递数据的最流行的一种数据格式定义格式和 OC 中快速包装字典和数组的格式非常像http://www.w3cschool.cc手册网站,提示:内容原创 2017-06-17 22:51:26 · 490 阅读 · 0 评论 -
iOS 沙盒目录笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄M Modify -修改A Added -添加po -> print object,可以在控制台打印当前方法中能够访问的对象Xcode 6开始,模拟器的路径发生变化!安装10.10之后,iOS6的模拟器就无法启动了!面试题:iOS6的程序运行在i原创 2017-06-17 21:22:14 · 447 阅读 · 0 评论 -
iOS 网络和多线程面试题01~[有答案]
//联系人:石虎 QQ: 1224614774 昵称:嗡嘛呢叭咪哄一.选择题(前三题是多选 ,后面为单选题)1. 以下对堆和栈的描述正确的是(多选ABD )A.栈区[stack]由编译器自动分配并释放,一般存放函数的参数值,局部变量B.堆区[heap]由程序员分配和释放,如果程序员不释放,程序结束时,可能会由操作系统回收.C.栈的内存大小是由程序员分配,内存原创 2017-06-17 20:50:57 · 5325 阅读 · 0 评论 -
iOS 网络和多线程面试题02~[有答案]
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄 一.选择题1. 以下对堆和栈的描述正确的是( ABD)A.栈区[stack]由编译器自动分配并释放,一般存放函数的参数值,局部变量B.堆区[heap]由程序员分配和释放,如果程序员不释放,程序结束时,可能会由操作系统回收.C.栈的内存大小是由程序员分配,内存地址是从高地址向低地址存(先进后出的原则)原创 2017-06-17 21:07:33 · 1646 阅读 · 0 评论 -
iOS GCD实现获取验证码的倒计时
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群 代码实现//倒计时按钮@property(nonatomic,strong)UIButton *btnCountdown;//用 GCD实现倒计时功能- (void)btnCountdownCl...原创 2017-06-01 08:03:04 · 1601 阅读 · 1 评论 -
ios dispatch_semaphore是GCD用来同步的一种方式
联系人:石虎 QQ: 1224614774 昵称:嗡嘛呢叭咪哄dispatch_semaphore是GCD用来同步的一种方式,与他相关的共有三个函数,分别是dispatch_semaphore_create,dispatch_semaphore_signal,dispatch_semaphore_wait。下面我们逐一介绍三个函数:1.dispat原创 2017-05-31 23:41:03 · 1355 阅读 · 1 评论 -
iOS HTTP状态码
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄1xx消息这一类型的状态码,代表请求已被接受,需要继续处理。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束。由于HTTP/1.0协议中没有定义任何1xx状态码,所以除非在某些试验条件下,服务器禁止向此类客户端发送1xx响应。这些状态码代表的响应都是信息性的,标示客户应原创 2017-06-07 17:20:28 · 1512 阅读 · 1 评论 -
iOS XML解析笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄XML出身名门,W3C主推的网络数据传输格式,IBM &微软共同大力推广的格式JSON出身民间,来源于 javascript,开发网页使用的一个脚本语言数据库-MySQL,Oracle,SQL Server,DB2两个不同数据库之间要传递数据,“异构数据原创 2017-06-07 17:37:45 · 1261 阅读 · 1 评论 -
iOS BASE64 编码 和HASH 哈希函数(散列函数) ~用户信息安全
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄01.用户信息安全================================================================================1> 数据安全原则不能存储(本地&服务器)与安全相关的明文信息不能直接在网路上传原创 2017-06-28 23:25:21 · 877 阅读 · 0 评论 -
iOS GCD介绍: 基本概念和Dispatch Queue
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄iOS的三种多线程技术 1.NSThread 每个NSThread对象对应一个线程,量级较轻(真正的多线程)2.以下两点是苹果专门开发的“并发”技术,使得程序员可以不再去关心线程的具体使用问题ØNSOperation/NSOperationQueue 面向对象的线程技转载 2017-06-24 08:31:52 · 483 阅读 · 0 评论 -
iOS NSURLConnection & AFNetworking 缓存机制
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄一. URL缓存基本概念NSURLCache 提供了内存与磁盘的缓存机制。任何通过NSURLConnection 加载的请求都会 NSURLCache 处理,因为 AFNetworking 使用了NSURLConnection ,所以也会被处理。当完成数据的请求原创 2017-06-22 21:13:19 · 890 阅读 · 0 评论 -
iOS GCD & NSOperation 对比~笔记
//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄GCD & NSOperation GCD -将任务(同步执行/异步执行)添加到队列(串行/并发/主队列/全局) *需要各种排列组合,而且一上小心还会死锁 *GCD有一些 NSOperation上具备的功能,群组调度,一次性执行,延迟原创 2017-06-22 16:58:13 · 548 阅读 · 0 评论