自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

墨丘利的博客

厚积薄发

  • 博客(19)
  • 资源 (5)
  • 收藏
  • 关注

原创 fishhook-带你看fishhook源码,如何hook系统自带的C函数

这两天在看戴铭老师的即刻时间的课程,看了一下obj_msgSend的hook,针对于自己看fishhook的一些收货和感悟,和大家分享下,链接在下面。https://www.jianshu.com/p/fa31e76549de...

2020-01-20 09:18:03 623

原创 iOS 属性修饰符atomic并不是绝对安全的

    atomic原子性,是否是绝对线程安全的,不是绝对线程安全怎么理解?首先看一下代码以及打印结果@property (atomic, assign) NSInteger intA; //有一个atomic的属性,表示是原子的- (void)viewDidLoad { [super viewDidLoad]; //开启一个线程对intA的值+1 dispatc...

2018-09-12 09:10:27 2133

原创 AFNetWorking改为同步请求

    之前使用AFN etWorking这个库来做网络请求,一直都是做的异步的,突然有需求需要改成同步的,当时从网上找了一些方法,说使用信号量来做,但是尝试了一些,都不对,最后由于时间关系,同步请求改为了系统的同步请求来实现了需求。后面仔细的去查了一下,原来信号量使用的不对,特此记录一下。    1:先看看系统自带的同步请求是如何发送的NSMutableURLRequest *requ...

2018-08-21 20:49:25 4469 1

原创 method swizzling 笔记(一):未实现方法的方法

    最近在研究method swizzing,读到了这一偏文章,原文链接,这篇链接已经说得很清楚了,网上80%的关于对viewWillAppear这个方法的交换的搜索结果,都是在viewWillAppear已经存在的情况下进行的。但是如果想要交换的是一个未实现的方法又是怎么样的呢,链接里面文章说的很清楚,在这里记录一下。    先介绍一下会使用到的几个函数,对这些函数了解的可以直接跳过    ...

2018-06-21 22:02:15 496

原创 iOS多线程--gcd篇

    这几天在看iOS-gcd相关的书籍,做一个简单的总结    1): 队列     分为串行队列和并行队列:  dispatch_queue_create("serialQueue",nil),这个方法总共有两个参数,第一个参数是这个队列的名称,第二个参数有两个值可以选择,分别是"DISPATCH_QUEUE_SERIAL","DISPATCH_QUEUE_CONCURRENT",前面一个表...

2018-03-24 18:11:54 352

原创 SDWebImage源码分析(二)

   继续上一篇没有完成的,上一篇的地址。   上一篇说到了从缓存和本地都没有读取到图片的话就从网络中获取图片这一部分,关于上一篇留下的问题"为什么在SDWebImageDownloaderOperation的start方法的start方法最后启用了runloop"的问题,我初步的理解了一下:每一个线程对应着一个运行时,主线程默认有一个运行时,子线程需要手动启动一个runloop,否则子线程需要延...

2018-03-20 21:46:05 219

原创 SDWebImage源码分析(-)

   本篇文章主要记录自己阅读SDWebImage时,对SDWebImage的理解,如果有不正确的地方,欢迎指正   SDWebImageView获取图片的主要思路是:开始从缓存NSCache里面取,取到了就返回;如果没有取到就从本地磁盘上取,取到了就设置缓存然后返回;如果没有取到就从url路径里面下载。   本文从文件"SDWebImageView+WebCashe.h"说起,这个文件主要是设置...

2018-03-19 22:23:39 727

原创 UITableView的相邻cell交换简单动画

 实现了上下两个cell交换的简单动效,界面如下,点击上,和上面一个cell交换位置,点击下,和下面一个交换位置,点击删除,就删除当前的cell,完整代码,简单说明一下主要cell交换的代码。UITableViewCell *cell = [_tableView cellForRowAtIndexPath:indexPath];NSIndexPath *nextIndexPath = ...

2018-09-11 09:48:30 3053

原创 OC的消息转发机制

     以下是个人对OC里面消息转发流程的理解,如有不正确的地方,欢迎指正。    正常情况下,调用一个对象里面已经存在的方法,能够调用成功,如下@implementation MsgSendViewController- (void)viewDidLoad { [super viewDidLoad]; /** OC里面调用一个方法的过程...

2018-07-24 23:43:45 768

原创 Block知识点总结(一)

    Block相关的知识点始终都弄的不是很明白,这段时间仔细看了一下,记录一下.    头文件里面block常用的写法            实现文件里面block的写法                                      ...

2018-07-24 22:55:40 362

原创 KVO原理以及自定义KVO

   系统的KVO的用法和现象     有一个KVOModel类,只要一个名字为name的属性,现在要监听name属性的变化,先调用系统的KVO方法来运行,如下 KVOModel *model = [KVOModel new]; model.name = @"1"; NSLog(@"---%@---",object_getClass(model)); /**...

2018-07-24 22:53:15 367

原创 iOS多线程-gcd篇(一)-对group的补充

    上一篇文章记录了gcd的基本知识,上文链接,由于是查看资料,所以比较浅。最近遇到了一个情景:异步的上传多张图片,待所有的图片上传完成最后,才执行一个保存的操作。最开始写的错误代码如下,上传的地方就使用一个异步的线程来代替好了。    看如下代码,通过循环创建了三个异步的任务,分别延时三秒打印当前的下标,我们需要的结果是打印下标完成之后,最后打印group finish,但是打印结果如下:可...

2018-06-21 22:25:41 331

原创 iOS 打开天猫/淘宝/京东客户端并且进入商品详情页/店铺主页的方法

   今天公司的需求说需要在app里面打开手淘/天猫/京东的商品详情页或者是店铺的主页,在网上搜了下,打开天猫和手淘有两种方法,一种是使用阿里百川的SDK完成,这个我还没有去尝试,我总结一下另一种可以打开的方法。我是使用的tablView布局,数据源是dataArray,didSelectRow的点击事件是下面这样的,在手机上安装了对应的app的时候,就可以直接打开到对应的页面,上面shop_id...

2018-03-28 21:32:58 44597 2

原创 仿途虎的车型选择页面

仿途虎的车型选择页面,可看如下的gif效果,可在我的文档里面下载,源码的github链接

2018-03-23 22:22:11 3340 2

原创 IM及时聊天-1

简单的记录一下,两份基本相同的代码,实现了从一个模拟器向另一个模拟器发送消息;   主要的逻辑是:A模拟器开启了1024端口,然后A向1025端口发送消息;B模拟器开启了1025端口,然后B模拟器向1024端口发送消息A模拟器: #import "GCDAsyncUdpSocket.h引入代理 GCDAsyncUdpSocketDelegate@property (

2018-02-02 17:48:59 186

原创 swift-1-tableview

之前使用OC,开始学习swift,语法是有点不习惯,tableview的简单用法,记录下class FirstTableViewController: UIViewController {    private var tableView :UITableView!    private var dataArray : [String]!    privat

2018-01-31 09:09:03 273

原创 swift

let str = "syx"print("Hello, World!",str)print("Hello, World! "+str)print("1","2","3", separator:"+", terminator: "4")print("syx");//let a = 1+2;//print(a);////for x in 0...1

2018-01-30 09:58:57 251

原创 白帽子讲web安全(1)

一个中年大叔开始学习web安全。之前是做web开发的,对于html知识有一点基础,想了解一下web安全方面的知识,于是买了一本白帽子讲web安全的书籍,今天看了一点,也对着书本上说的东西敲了一下代码。读到通过XSS获取本地ip的时候,说将java代码嵌入到页面中,这个嵌入到页面中是如何操作的,我没有弄明白。之前在对着书上的例子,在浏览器的控制台上写http请求获取邮件列表的时候,是直接在控制台

2017-12-03 15:24:56 708

原创 linux学习笔记(-)

前几天给电脑安装了ubuntu和windows的双系统,对于一个害怕动手的人来说,还是一个小小的成就。      由于之前是在公司,没 有有线,装了之后最主要的问题就是连不上无线 。今天周末在家里,连上有线之后,一直捣鼓怎么弄无线,各种命令ifconfig,iwconfig,然后各种no wireless extensions的打印结果,也没有wlan0的这样的打印,连上有线之后,mii-to

2017-12-02 16:55:05 177

仿途虎的车型选择

仿途虎的车型选择的页面效果,点击和拖动的效果,侧滑的效果

2018-03-23

TCP/IP协议 共三卷 很清楚的

TCP/IP协议 共三卷 很清楚的 pdf,从别人那里下载的,要了13个积分,现在分享出来,就是每一章都是一个pdf,看完一节就换一个pdf

2018-01-31

关于ibatis的一些笔记

自己平时学ibatis时候 遇到的问题 记下来了以及解决方法

2015-01-26

commons-fileupload-1.3.1.jar

文件上传下载的jar包,fileupload

2015-01-26

android啊大大

JQuery AJAX的例子 $(function() { $("#addParentClass").click(function(){ if($("#parentClass").val()!=""){ if(!(/^\d+$/).test($("#orderNumber").val())){ //if(!isNaN($("#orderNumber").val())){ window.alert("请输入数字!");return (false); }else{ $.ajax({ url:'${path}/sys_CommenQuestion_addParentClass_n.action', type: 'POST', data:{parentClass:$("#parentClass").val(),orderNumber:$("#orderNumber").val()}, success: function(boo){ if(boo=="ok"){ alert("添加成功!"); window.parent.location="${path}/cmhb/sysManage/FAQMaintenance/exchangeCorner2.jsp"; }else if(boo=="alreadyHas"){ window.alert("该名称已存在,请输入其他!");return (false); } } }); } }else{ window.alert("请输入新增父类!");return (false); } }); });

2014-11-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除